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

require("file.php");
require_once("file.php");

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

в чем разница между этими двумя функциями?

Вы читали документация require_once?

axiac 02.05.2018 07:39
"в чем разница между этими двумя функциями?" - это не функции, а языковые конструкции (утверждения).
axiac 02.05.2018 07:39

Возможный дубликат В чем разница между require, include, require_once и include_once?

BharathRao 02.05.2018 07:49
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
3
1 059
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

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

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

При отсутствии Require произойдет сбой.

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

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

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

В остальном разницы между ними нет.

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

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

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

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

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

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

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

И это всего лишь предложения, но предложения, которые исходят от людей, которые умнее меня, с многолетним опытом работы на десятках языков. ССЫЛКА: Разница между "включать" и "требовать" в php

Другие вопросы по теме