Подключение файлов в PHP. Принцип подключения файлов в PHP Функции include require в php
21.01.2018
Пока нет
Всем привет!
Продолжаем изучать основы PHP с нуля!
В этом уроке я расскажу вам, как подключить файл в php
.
Зачем нужно подключать файл в php?
Минутку внимания, сейчас все узнаете.
Помните наш предыдущий урок №16, где я рассказывал о ?
Так вот, вы можете создать файл, например «function.php
» и вписать туда все функции, которые вам нужно будет использовать для сайта. Останется только подключить файл «function.php
» на странице сайта и все. Это удобно, а также нет на главной странице сайта кучу лишнего кода.
Наведу еще один пример, где можно использовать подключение внешних файлов php.
Например, у вас есть сайт из 100 страниц, который состоит из шапки, меню, контента и футера.
И вам вдруг нужно добавить в меню еще один раздел. Представьте: для этого нужно открыть 100 файлов, чтобы сделать исправление.
Но можно всего этого избежать, если создать отдельно файл, например, «menu.php
» и подключить его к вашему сайту там, где должно быть меню. И после это, если вы сделаете исправление только в одном файле «menu.php
», замена произойдет на остальных 100 страницах сайта автоматически. Таким способом вы можете подключить шапку сайта, футер и т.д. Удобно, не правда ли?
Я думаю, в конце этой статьи я покажу на примере, как это организовать.
Итак, чтобы подключить внешние файлы php, существуют две основные конструкции включений
: require
и include
.
Конструкция включений include
Конструкция include позволяет включать файлы в код PHP скрипта во время выполнения сценария.
Синтаксис конструкции include:
include "имя_файла"; ?>
Если в папке:
include "имя_папки/имя_файла"; ?>
Создайте файл «function.php » вот таким кодом:
Теперь в файле «index.php » попробуем подключить файл «function.php » (строка №2):
Результат:
Внимание: бывают такие случаи, что вы можете забыть и попытаетесь подключить файл «function.php » еще раз (строка№2, №3):
В итоге может возникнуть фатальная ошибка или может вывестись еще раз содержимое файла. В моем случае будет ошибка:
Fatal error : Cannot redeclare Sreturn() (previously declared in O:\home\localhost\www\php\function.php:2) in O:\home\localhost\www\php\function.php on line 5
Если саму функцию убрать, а прописать текст (файл «function.php »):
Ну и, естественно, в файле «index.php » тоже уберите вывод функции:
то результат просто повторится.
Привет! Привет!
Чтобы не допустить таких ошибок и исключить повторное подключение файла, вместо инструкции «include » надо применять инструкцию «include_once » .
конструкции « include_once»
Синтаксис конструкции «include_once »:
include_once "имя_файла"; ?>
Пример (строка №2, №3):
Хоть и два подключения, но файл будет подключен только один раз, то есть, подключение будет проигнорировано, так как файл уже подключен.
Конструкция включений require
Конструкция require позволяет включать файлы в сценарий PHP до исполнения сценария PHP.
Синтаксис конструкции «require »:
require "имя_файла"; ?>
Если в папке:
require "имя_папки/имя_файла"; ?>
Если у нас в коде встретятся несколько инструкций require , которые подключают один и тот же файл, то интерпретатор выдаст ошибку. Чтобы избежать данной ситуации, надо использовать инструкцию «require_once » :
конструкции «require_once»
require_once "имя_файла"; ?>
Внимания: если подключить несуществующий файл через «include », «include_once », «require » или «require_once », то в результате будет ошибка:
Warning: include_once(function1.php) : failed to open stream: No such file or directory in O:\home\localhost\www\php\index.php on line 2
Теперь, как я и обещал, покажу, как на сайте подключить меню, шапку и футер сайта. Возьму для примера уже готовый сайт, тот, что мы с вами делали, когда изучали .
Разобьем этот сайт на такие файлы:
Итак, создайте папку «Experiment» на (или на хостинге). Там будет новый сайт для эксперимента.
В папке «Experiment » создайте еще одну папку под названием «include ». Как вы поняли, в папке «include » будут храниться файлы для подключения («menu.php », «heder.php » и «footer.php »).
Теперь зайдите в папку «include » и создайте там файл «menu.php » вот с таким кодом:
Создайте еще один файл под названием «heder.php » и вставьте вот такой код:
сайт
обучение основам HTML
Создайте еще один файл под названием «footer.php » и вставьте вот такой код:
Теперь выходим из папки «include» и создаем главный файл «index.ph
p»
(внимание:
не «index.html
», а именно «index.php
») вот с таким кодом:
ГЛАВНАЯ |
Подключение файлов я сделал в строках №19, №32, №38.
Обратите внимания, что я просто участки кода, которые выводятся через «include_once
», просто для понимания, а так комментарии можно убрать, код сократится и файл станет легче:
ГЛАВНАЯЗдесь будет текст для главной страницы |
Теперь дублируйте этот код для остальных файлов «obo-mne.php », «uslugi.php », «obratnaja-svjaz.php », только меняя текст заголовка и самого контента.
Вот и все, смотрите и проверяйте.
Для полного счастья (чтобы отображались картинки) не забудьте создать папку «image
» с картинками.
Подписывайтесь на обновление блога, чтобы не пропустить вкусных уроков по основам PHP.
Предыдущая запись
Следующая запись
Для чего нужно использовать в файлах PHP оператора Include или Require
?
Очень удобно разбить одну большую программу или веб-страницу на несколько файлов. А бывает, что просто необходимо свой файл подключить к скрипту другого разработчика.
Расскажу один случай из моей жизни. Когда я начал заниматься изучением HTML, я создал свой первый сайт. Тогда я еще не знал, что существует язык программирования PHP. Сайт состоял из 100 страниц. Когда я добавлял статью, мне нужно было на каждой страничке в отдельности в меню указывать название и путь новой странички. Это был ужас, потому что, как вы понимаете, это занятие занимало уйму времени, пока я не узнал об операторе Include с возможностью подключать к своей странице сторонние файлы. Стоило мне только сделать изменение в одном стороннем файле, например, в меню, как на всех 100 страницах происходила замена. Удобно, быстро и модно .
Давайте на простом примере попробуем подключить к нашей веб-странице сторонний файл.
Создайте файл с именем «index.php » с таким кодом:
Можно вот так:
Теперь создайте файл «cop.php » с таким кодом:
Результат:
Итак, что мы сделали?
В файле «index.php
» мы осуществили подключение к стороннему файлу «cop.php
».
Если поменять текст в файле «cop.php », то в файле «index.php » вы увидите замену.
Шаблон оператора Include :
Шаблон оператора Require :
Еще один пример для закрепления темы.
У нас есть вот такая веб-страница:
Все права защищены © 2012-2014..ru
Давайте теперь разобьем эту веб-страницу на два блока с помощью оператора Include или Require, как на схемке:
Это буде выглядеть вот так:
Сохраните ее под именами «index.php
», «avtor.php
» и «kontakty.php
»
То есть, получится три страницы «index.php
», «avtor.php
» и «kontakty.php
».
Теперь создайте файл «menu.php » для меню:
Главная Автор Контакты
Все права защищены © 2012-2014..ru
Результат:
Если поменять что-то в файле «cop.php » или «menu.php », то автоматически произойдет замена в трех файлах «index.php », «avtor.php » и «kontakty.php ». Попробуйте сами.
Вот и все! Подписывайтесь на обновление блога, чтобы не пропустить новых уроков PHP . Удачи!