Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'redirect_login_page' not found or invalid function name in /var/www/yur88222767/data/www/1st-network.ru/wp-includes/class-wp-hook.php on line 308
Функции эмуляции SSI - В сети

Функции эмуляции SSI


Содержание

Большое приложение не состоит из одного файла. Над разными частями работают люди. Затем приложение собирается воедино. Есть технология SSI (включение на стороне сервера). Сейчас многие ее не используют, т.к. в самом php существуют функции эмуляции SSI, когда мы бъем код на разные файлы, а на сервере он склеивается воедино. Для этого используются функции:

  • include () — вставить содержимое файла.
  • include_once ().
  • require ().
  • require_once ().

Принцип работы функций:

Есть два файла: test.php (слева) и index.php (справа). В index.php пишем функцию include => на ее месте вставится содержимое файла test.php. И в браузер уйдет файл см. нижний. В данном примере файл test.php — это подключаемый файл. Некоторые ставят расширение .inc, т.е. говорят, что этот файл не самостоятельный, сам он запускаться не будет, это часть какого-то кода.

Разница между функциями include () и require ()

Если подключаемый файл отсутствует, то include выдаст ошибку уровня Warning (т.е. код продолжит выполнятся). А require — выдаст ошибку уровня Fatal error (код вылетает). Чтобы ошибки вообще не выводись, можно поставить перед именем функциии знак ‘собаки’ @ — она гасит все ошибки, произошедшие при выполнении кода. Так делать не не надо, т.к. @ — очень медленный оператор (лучше использовать error_reporting).

Обычно функции хранят в файлах-библиотеках. Когда мы подключаем несколько файлов-библиотек к себе в код => выскочит ошибка (‘не могу редекларировать указанную функцию’), функции будут дублироваться. Чтобы этого избежать, многие подключают файлы через include_once () или require_once (). Разница между ними — в уровнях ошибок (либо Warning, либо Fatal). Таким образом, функции подключаются только один раз. Т.е. второй раз такой же файл не подключится.


Ваш комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

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