Intereting Posts
Какая функция gc_collect_cycles полезна? Я не могу получить свою форму для подключения, чтобы правильно взаимодействовать с базой данных mySQL Что такое хороший учебник или книга для изучения обработки кредитных карт с использованием PHP? Я хочу открыть новую вкладку вместо всплывающего окна Статический и нестатический вызов в PHP CakePHP, получение данных для моделей HABTM с использованием условного поиска Mysql – подключение к удаленному серверу с использованием IP-адреса Хранение javascript Date () в mySQL echo json array в столбце phpMyAdmin VIA PHP Facebook не может очистить метаданные после того, как я переместил WordPress на новый сервер Преобразование экспоненты в целое число в PHP bootstrap 3 подтвердить удаление модального в cakephp как я могу исправить продолжительность времени, чтобы заполнить форму Есть ли максимум для вывода PDO :: debugDumpParams? Какие заголовки я хочу отправить вместе с ответом 304?

В чем разница между «include_once» и «require_once» в PHP?

В чем разница между «include_once» и «require_once» в PHP?

include_once "connect_to_mysql.php"; require_once "connect_to_mysql.php"; 

Есть ли разница между ними?

Include позволит скрипту работать (с предупреждением), если файл отсутствует.

Требование будет сбой, если он отсутствует.

Если вы используете include для вещей, которые на 100% опциональны, тогда включение будет по-прежнему работать и потребует взорваться.

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

Это не хороший способ писать программы.

В противном случае между ними нет никакой разницы.

редактировать

При типичном использовании не имеет значения, хотите ли вы использовать include или require 95% случаев.

Таким образом, вы должны придерживаться require (или require_once ), чтобы сообщить вам, когда вам не хватает файла, который вам нужен.

Ошибки, возникающие из-за включений файлов внутри включенных файлов, внутри входящих файлов, когда один из них содержит верхнюю часть, отсутствуют, очень сложно отслеживать.

Некоторые люди предпочитают include , потому что они хотят использовать эту «особенность».
Douglas Crockford – это JavaScript / Java / C ++, а не PHP, но он предполагает, что для вашего здравомыслия следует избегать функций, которые выглядят как ошибки или побочные эффекты, неотличимые от ошибок.

Имейте в виду, что если весь ваш проект полностью основан на классе (или функциональный) и полностью модульный, то вам не нужно много использовать для включения, кроме, скажем, сброса значений объекта конфигурации при инициализации приложения (включая админ- переопределить параметры или опции отладки debuging) на объект, который уже require d.

Как вы могли догадаться, есть и другие способы сделать это.

И это только предложения, но предложения, которые исходят от людей, которые умнее меня, с многолетним опытом работы на десятках языков.

include_once выдаст предупреждение , но не остановит PHP на выполнение остальной части скрипта.

require_once выдаст ошибку и остановит PHP от выполнения остальной части скрипта.

Разница в том, что require_once() приведет к Fatal Error при сбое, в то время как include_once() вызывает только предупреждение.

page stop execute require_once не может быть загруженным требуемым файлом, а с другой стороны include_once будет продолжаться вместо ошибки при загрузке, включая файл.