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

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

В PHP как и в HTML есть возможность подключать файлы операторами include и require

Но если в HTML мы подключаем стили и скрипты, то в php мы можем подключать любые страницы, с любым кодом в том числе подключаться к базе данных. В этом уроке мы научимся подключать страницы. Для того чтобы подключить файлы в 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.
Запись появится в файле 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 можно всего один раз, любым из выше перечисленных операторов иначе будет ошибка. Пример создадим файл fruct.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 яблок меньше. Заметили ошибку? Мы передавали аргумент груши, а нам выдало яблоки. Здесь нужно быть внимательными при передаче аргументов в параметры и параметров в условие. 
Таким образом мы можем использовать функцию сколько угодно раз выводить результат.  

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

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

include_once 'http://site.ru/file.php'; //подключили файл с другого сайта  

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

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