Есть ли способ использовать функцию die()
чтобы остановить выполнение инструкций PHP на странице, включенной на другую страницу, но продолжить выполнение инструкций PHP на странице, на которой был включен файл, содержащий функцию die()
?
использовать return;
в прилагаемом файле. Это остановит это, включая выполнение. Он работает как функция. Также вы можете вернуть значение из вашего включенного файла
Нет. die
– это псевдоним для exit
который немедленно останавливает выполнение скрипта.
Но вместо этого вы можете использовать return
, который делает именно то, что вы хотите:
Если вызывается из глобальной области, то выполнение текущего файла сценария завершается. Если текущий файл сценария был
include()
ed илиrequire()
ed, тогда управление передается обратно в вызывающий файл. Кроме того, если текущий файл сценария былinclude()
ed, то значение,return()
будет возвращено как значение вызоваinclude()
. Еслиreturn()
вызывается из основного файла сценария, выполнение сценария завершается.
Как указано в выдержке из документов PHP , вы можете даже использовать его для получения кода возврата / возвращаемого значения из include:
$include_retval = include('file_like_function.php'); if ($include_retval) { die("include returned error code: " . $include_retval); }
Нет. Вместо этого вы могли бы использовать блоки try
?
try { include $file; } catch (Exception $e) { // Whatever }
И выбросьте исключение, где вы будете использовать die()
в $file
.