Подключить файлы в PHP include и require.

Подключить файлы в PHP include и require.

В PHP подключаем файлы операторами include и require

 В этом уроке мы научимся подключать страницы. Для того чтобы подключить файлы в php используем операторы  include и require.
Оба этих оператора подключают файлы, разница лишь в том что если require не найдет подключаемый файл, выдаст ошибку и остановит сценарий. Его используют когда подключаемые файлы обязательны для работы,  а include позволяет подключать файлы динамически во время выполнения сценария и если файла нет просто пропустит его, и продолжит выполнять код дальше. У этих операторов есть конструкция однократного включения include_once и require_once, если вы подключили файл этим оператором, то второй раз он уже не подключится.  Пример

Создадим в корневой директории файлы
index.phptest1.php и папку file и в ней  test2.php

В тест1 запишем 

 
echo ' <p> Это файл в корневой директории test 1 ';
 

В тест2

 
echo ' <p> Это файл test 2 в папке file ';
 

В index.php подключим файл test1.php в корневой папке, то есть в той что и интекс и подключим test2.php который в папке file.

 
include ('test1.php');   // 1 подключаем файл тест1 в той же папке, использование как функции
 
 
require 'file/test2.php';  // 2 подключаем тест2  в папке файл.
 
 
include_once 'test1.php ';  // 3 подключаем файл конструкцией once
 
 
require 'file/test.php';  //   4  подключаем файл котрого нет оператором require
 

Получаем 

Это файл в корневой директории test 1  // 1 подключился 

Это файл test 2 в папке file   // 2 подключился 

// 3 не подключился, так как он уже был подключен в 1.

 Warning: require(file/test.php):  // 4 ошибка так как такого файла нет и скрипт прекратил свою работу.

Добавим в файл test2.php, внизу переменную с текстом.

$test = ' Это тестовая строка в файле тест2 ';
 

И выведем эту переменную в конце файла index.php с тегами html заглавными буквами.

<h1> <?= $test ?> </h1>
 

Такая запись используется для вставок в html код короткого кода php. Если у вас ошибка значить вы не закрыли предыдущий код php.
Запись появится в файле index.php, так как мы подключили к индексу файл тест2. То и можем обращаться к его содержимому. Подключение должно быть всегда перед обращением к данным файла.

Подключить файл на директорию выше 

Создадим в папке file файл test3.php и в него подключим файл index.php 

 
include '../index.php'; // подключили файл index.php находящийся в корневой папке
 

Откроем файл тест3 который лежит /file/test3.php  и увидим все тоже что и в файле индекс.

Если мы переподключим файлы друг в друга, то у нас выведет ошибку.  

В файл tect2.php  запишем проверочную функцию file_exists 

Для проверки находится ли в папке файл используем встроенную функцию, запишем ее как тернарный оператор. 

 
echo (file_exists("../index.php")) ? " Существует" : " Не существует";
 

Теперь зайдя /file/test2.php в верху справа строки (Это файл test 2 в папке file) будет надпись Существует, а при переходе на index.php, Не существует.

Следует всегда подключать файлы, перед использованием данных из них. В видео уроке создание сайта, мы разберем правильное подключение зависимых файлов к нашему макету.  

Полезные константы

В PHP есть полезные встроенные константы, которые пригодятся для использования в пути к подключаемым категориям и файлам. Записывается так, два подчеркивания, заглавные буквы и два подчеркивания. Пример 
__DIR__ — Полный путь к директории, в которой находится текущий файл.
__FILE__— Полный путь к исполняемому файлу.

Запишем ниже в файл тест2 вывод директории и путь к файлу. 

 
echo __DIR__; // и увидим полный путь к к папке в которой лежит файл.
 
 
echo __FILE__;  увидим путь и сам файл test2.php
 

Так же подключаем файлы при помощи операторов __DIR__ . ставим конкатенацию и / слеш перед обращением к  каталогу. Пример

 
include __DIR__ .'/file/test2.php';
include __FILE__ .'/file/test2.php';
 

 Подключая файлы с константой  __DIR__ вы сможете переименовать директорию выше без ошибок, все файлы останутся подключенными и при работе с cron позволяет избежать ошибок. 
При этом в подключении файлов с данными от пользователей эти константы лучше не использовать.

Подключить функцию в php

Подключить файл с функцией в php можно всего один раз, любым из выше перечисленных операторов иначе будет ошибка. Пример создадим файл test4.php и запишем в него переменные и функцию.

 
$gr = '6 груш'; // 6 груш
 
 
$ap = '5 яблок'; // и 5 яблок
 
 
function fruct($ap, $gr) { // Передаем в параметры аргументы груш и яблок
 
 
if ($gr <= $ap) { // сверяем каких фруктов меньше либо равно.
 
 
return "$gr меньше"; // возвращаем сразу результат если груш.
 
 
}
 
 
return "$ap меньше"; // и если яблок меньше.
 
 
}
 
 
 fruct($ap , $gr); // передали один аргумент, а получили результат каких фруктов меньше.
 

Увидим 5 яблок меньше. Подключать функцию уже с выводом результата возможно один раз на странице, а вот обращаться к функции и выводить результат, сколько угодно раз. Запишем результат из функции в самом низу страницы индекс. Передадим в функцию новые аргументы,  выведем ее в краткой записи php и в теге html.

 
<h2> <?= fruct($gr=19 , $ap=54) ?> </h2>
 

Получим 19 яблок меньше. Заметили ошибку? Мы передавали аргумент груши, а нам выдало яблоки. Здесь нужно быть внимательными при передаче аргументов в параметры и параметров в условие. 
Таким образом мы можем использовать функцию сколько угодно раз выводить результат.

Подключаем фал при помощи функции

Создадим функцию test4

&nbsp;&nbsp; function test4() {
<p> if (include 'test4.php') {&nbsp; // подключаем файл&nbsp;</p><p> return; }&nbsp; &nbsp;// выводим результат&nbsp;</p><p> }</p><p>test4();&nbsp; // выводим функцию с&nbsp;подключенным файлом.</p>

Подключить файл в php с другого сайта 

Конструкция include позволяет включать удаленные файлы, если такая возможность включена в конфигурационном файле PHP. Чтобы подключение было возможным, в Open Server в php.ini, дополнительно, конфигурация, версия php которую вы используете. Раскомментируйте строку и установите значение 1
allow_url_include = 1 

include_once ("<a href="http://site.ru/file.php" )"="">http://site.ru/file.php")</a>; //подключили файл с другого сайта
 

Не рекомендуется в целях безопасности сайта. Используйте только для теста примера. 

21:25
91
Lit
RSS
Нет комментариев. Ваш будет первым!