В чем разница между PHP и требованием?
Я знаю, что базовое использование PHP требует, требует один раз, включать и включать один раз. Но я смущен, когда буду использовать их.
Пример. У меня есть 3 файла, например: settings.php, database.php и index.php.
В файле database.php я написал:
require_once 'settings.php';
а затем в index.php, я написал:
require_once 'settings.php';
require_once 'database.php';
поэтому я загружаю settings.php два раза, это нормально? Любые подсказки, использующие эти функции?
Ответы
Ответ 1
-
include
содержит файл и выдает предупреждение, если файл не найден.
-
require
содержит файл и генерирует фатальную ошибку, если файл не найден.
-
include_once
и require_once
делают то же самое, но только если файл еще не загружен.
Однако необходимость в одной из функций _once
обычно является признаком плохой конструкции. Вы должны создавать свои сценарии таким образом, чтобы четко определять, что входит в него.
Выберите одно место для settings.php
для включения - возможно, index.php
. Нет необходимости дополнительно включать его в database.php
.
Ответ 2
Вы не загружаете settings.php два раза, по документация по PHP на require_once;
Оператор require_once() идентичный require(), за исключением того, что PHP будет проверьте, был ли файл уже включены, и если да, не включать (требуется) снова.
Ответ 3
require_once
будет проверять, включен ли файл и не включать его снова, поэтому не беспокойтесь, он не будет дважды загружать settings.php
.
Ответ 4
Если ваш файл важен, я думаю, вы должны использовать "require",
но если нет, я всегда использую include, например, peka ответил
require включает файл и выдает фатальную ошибку, если файл не найден.
Ответ 5
-
требовать
когда файл требуется вашему приложению, например, важный шаблон сообщения или файл, содержащий переменные конфигурации, без которых приложение может сломаться.
-
require_once
если файл содержит контент, который может привести к ошибке при последующем включении, например, в вашей программе определенно требуется function important() {/* important code */}
но поскольку функции не могут быть повторно объявлены, их не следует включать снова.
-
включите, когда файл не требуется, и поток приложения должен продолжаться, когда не найден, например,
отлично подходит для шаблонов, ссылающихся на переменные из текущей области видимости или что-то
-
include_once
необязательные зависимости, которые могут привести к ошибкам при последующей загрузке или, возможно, удаленному включению файлов, которые вы не хотите делать дважды из-за накладных расходов HTTP
Ответ 6
Отличие: -
include()
Извлекает данные и загружает содержимое в текущий файл, а также загружает один и тот же файл более одного раза.
include_once()
работает так же, как include()
но мы используем include_once(), если файл уже был включен, он не будет включен снова. если использовать один и тот же файл несколько раз в Like: - include_once 'setting.php';
использовать второй раз include_once 'settting.php';
игнорируй их.
require()
работает так же, как include().
require_once()
если файл уже включен, он не будет включен снова.
include()
и include_once()
выдают предупреждение, и скрипт будет продолжен.
require()
и require_once()
вызывают ошибку destl и останавливают скрипт.
Лучше использовать
require_once()
в вашем скрипте.
Ответ 7
include_once и require_once использовать в Php для добавления одной страницы на другую страницу: вы хотите добавить страницу подключения к базе данных conn.php в edit page edit.php, вы можете ее использовать.
Но есть разные между include_once и require_once, если функция include_once получает какую-либо ошибку, она будет предупреждать вас и выполнять код, но функция require_once находит любую ошибку, она остановит script и не выполнит код.