(PHP 4, PHP 5, PHP 7, PHP 8)
exit — Output a message and terminate the current script
$status
= ?): void$status
): void
Terminates execution of the script.
Shutdown functions
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
If status
is a string, this function prints the
status
just before exiting.
If 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
successfully.
No value is returned.
Example #1 exit
example
<?php
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or exit("unable to open file ($filename)");
?>
Example #2 exit
status example
<?php
//exit program normally
exit;
exit();
exit(0);
//exit with an error code
exit(1);
exit(0376); //octal
?>
Example #3 Shutdown functions and destructors run regardless
<?php
class Foo
{
public function __destruct()
{
echo 'Destruct: ' . __METHOD__ . '()' . PHP_EOL;
}
}
function shutdown()
{
echo 'Shutdown: ' . __FUNCTION__ . '()' . PHP_EOL;
}
$foo = new Foo();
register_shutdown_function('shutdown');
exit();
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.
Note:
This language construct is equivalent to die().