(PHP 4, PHP 5, PHP 7, PHP 8)
exit — Выводит сообщение и прекращает выполнение текущего скрипта
Прекращает выполнение скрипта.
Функции отключения
и деструкторы объекта
будут запущены, даже если была вызвана конструкция exit
.
exit
— это конструкция языка, и она может быть вызвана
без круглых скобок, если не передаётся параметр status
.
status
Если status
задан в виде строки, то эта
конструкция выведет содержимое status
перед выходом.
Если status
задан в виде целого числа (int),
то это значение будет использовано как статус выхода и не будет выведено.
Статусы выхода должны быть в диапазоне от 0 до 254, статус выхода 255 зарезервирован
PHP и не должен использоваться. Статус выхода 0 указывают для успешного
завершения программы.
Функция не возвращает значения после выполнения.
Пример #1 Пример использования языковой конструкции exit
<?php
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or exit("Невозможно открыть файл ($filename)");
?>
Пример #2 Пример использования конструкции exit
со статусом выхода
<?php
// обычный выход из программы
exit;
exit();
exit(0);
// выход с кодом ошибки
exit(1);
exit(0376); // восьмеричный
?>
Пример #3 Функции выключения и деструкторы выполняются независимо
<?php
class Foo
{
public function __destruct()
{
echo 'Деинициализировать: ' . __METHOD__ . '()' . PHP_EOL;
}
}
function shutdown()
{
echo 'Завершить: ' . __FUNCTION__ . '()' . PHP_EOL;
}
$foo = new Foo();
register_shutdown_function('shutdown');
exit();
echo 'Эта строка не будет выведена.';
?>
Результат выполнения приведённого примера:
Завершить: shutdown() Деинициализировать: Foo::__destruct()
Замечание: Поскольку это языковая конструкция, а не функция, её нельзя вызывать как переменную функцию или передавать как именованный аргумент.
Замечание:
Эта языковая конструкция эквивалентна конструкции die().