Підключення в php сторонніх файлів

Відео: [PHP] Підключення файлів (Урок 17)

Підключення в PHP сторонніх файлів

Дуже часто буває необхідність розбити одну велику програму на кілька файлів. Також буває таке, що необхідно підключити скрипт іншого розробника до своєї програми. І ось якраз про підключенні в PHP сторонніх файлів я і розповім в цій статті.

Давайте для початку створимо файл "a.php", В якому напишемо такі рядки:

lt ;?php
echo
"Це робота скрипта в файлі a.php"-
?gt;

Тепер давайте створимо ще один файл (наприклад, "b.php") І підключимо в ньому скрипт"a.php":

Відео: Уроки PHP 7 | Підключення файлів. Шаблон сторінки. Require.Include

lt ;?php
require"A.php"-
echo
"Це робота скрипта в файлі b.php"-
?gt;



Як ви здогадались, підключення стороннього файлу в PHP здійснюється за допомогою конструкції require. Якщо виражатися простою мовою, то ця конструкція просто копіює весь код з "a.php"І вставляє в"b.php". Дуже важливий нюанс: шлях до файлу повинен бути написаний правильно, причому намагайтеся писати відносний шлях, а не абсолютний, так як написання абсолютних шляхів в конструкції require часто відключено в настройках PHP, в цілях безпеки. Також Ви можете підключати не тільки PHP-файли, але і будь-які інші. Наприклад, часто підключаються HTML-файли. Свого часу, коли я робив один сайт, я щоб не копіювати певні повторювані речі (наприклад, меню, лічильники, авторські права та інше), я запхав їх HTML-код в окремий файл. А потім на кожній сторінці просто підключав ці файли. В результаті, щоб внести зміну, наприклад, в меню, мені достатньо було виправити один підключається файл, і відразу після цього весь сайт перетворювався. Так що ця конструкція дуже корисна, і, як мінімум, економить хмару часу.




Однак, дуже важливий момент. Як уникнути такої проблеми: припустимо два розробника роблять одну велику програму. Перший розробник знайшов готовий варіант виконання частини свого завдання, і підключив його за допомогою require. Другий розробник так само знайшов абсолютно те ж саме готове рішення для вже свого завдання, і так само за допомогою require підключив скрипт. Потім коли обидва розробника з`єднають свої частини в єдине ціле, з`являться помилки. Чому? А все тому, що вони один і той же скрипт підключили два рази. Давайте подивимося на простий приклад:

lt ;?php
require"A.php"-
require"B.php"-
echo
"Це робота скрипта в файлі c.php"-
?gt;

Якщо Ви запустите даний скрипт, то виявите, що файл "a.php"Підключався два рази, проте, ми ж викликали його всього один раз. Чому так вийшло? А тому, що в файлі"b.php"Він також підключається. Ось така проблема виходить. І вирішується вона дуже просто: за допомогою конструкції require_once. Вона робить все те ж саме, але якщо файл вже був підключений в цьому скрипті, то підключати його не буде. Давайте виправимо файл "b.php":

lt ;?php
require_once
"A.php"-
echo
"Це робота скрипта в файлі b.php"-
?gt;

Тепер, якщо ми запустимо скрипт "c.php", То побачимо, що файл"a.php"Запустився як і належить за все один раз. Особисто я Вам раджу завжди використовувати конструкцію require_once, якщо звичайно Вам не потрібно вставляти одне і те ж по кілька разів (таке теж іноді буває потрібно). Таким чином, Ви уникнете зайвих помилок.

І, наостанок, хочеться розповісти ще про двох схожих конструкціях, за допомогою яких теж можна підключити в PHP сторонні файли - це include і include_once. Вони повністю аналогічні вище розглянутим, але є одне невелике відмінність. У разі конструкцій require і require_once, якщо підключається файл не буде виявлений, то виконання скрипта перерветься. А при використанні include або include_once просто виведеться попередження, і скрипт продовжить виконуватися. Ось і вся різниця. Раджу навіть перевірити і переконатися вже в цьому самостійно.

Поділися в соціальних мережах:

Схожі
Як дізнатися pid скриптаЯк дізнатися pid скрипта
Створення движка на mvc. Створюємо авторизацію.Створення движка на mvc. Створюємо авторизацію.
Nodejs. Оброблювач подій.Nodejs. Оброблювач подій.
Створення движка на mvc. Допрацьовуємо роутер.Створення движка на mvc. Допрацьовуємо роутер.
Nodejs. Модулі.Nodejs. Модулі.
Php: безпека. Підключення файлів.Php: безпека. Підключення файлів.
Nodejs. Як обробляти post запити.Nodejs. Як обробляти post запити.
Створення движка на mvc. Починаємо роботу з базою даних.Створення движка на mvc. Починаємо роботу з базою даних.
Робота з правами доступу до файлів через phpРобота з правами доступу до файлів через php
Gulp. Структура проекту і робота завдань.Gulp. Структура проекту і робота завдань.
» » Підключення в php сторонніх файлів