(PHP 4, PHP 5, PHP 7, PHP 8)
exit — Вывести сообщение и прекратить выполнение текущего скрипта
$status
= ?): void$status
): void
Прекращает выполнение скрипта.
Функции отключения
и деструкторы объекта
будут запущены, даже если была вызвана конструкция 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().