(PHP 4, PHP 5, PHP 7, PHP 8)
exit — Output a message and terminate the current script
$status= ?): void
Terminates execution of the script.
and object destructors
will always be executed even if
exit is called.
exit is a language construct and it can be called
without parentheses if no
status is passed.
status is a string, this function prints the
status just before exiting.
status is an int, that
value will be used as the exit status and not printed. Exit statuses should be in
the range 0 to 254, the exit status 255 is reserved by PHP and shall
not be used. The status 0 is used to terminate the program
No value is returned.
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or exit("unable to open file ($filename)");
exit status example
//exit program normally
//exit with an error code
Example #3 Shutdown functions and destructors run regardless
public function __destruct()
echo 'Destruct: ' . __METHOD__ . '()' . PHP_EOL;
echo 'Shutdown: ' . __FUNCTION__ . '()' . PHP_EOL;
$foo = new Foo();
echo 'This will not be output.';
The above example will output:
Shutdown: shutdown() Destruct: Foo::__destruct()
Note: Because this is a language construct and not a function, it cannot be called using variable functions.
This language construct is equivalent to die().