exit
(PHP 4, PHP 5, PHP 7, PHP 8)
exit — Terminate the current script with a status code or message
Descrizione
Terminates execution of the script.
Shutdown functions
and object destructors
will always be executed even if exit() is called.
However, finally
blocks are never executed.
An exit code of 0
is used to indicate that the program
succeeded in its tasks.
Any other value indicates some sort of error occurred during execution.
exit() is a special function,
because it has a dedicated token in the parser,
as such it can be used like a statement (i.e. without parentheses) to
terminate the script with the default status code.
Attenzione
It is not possible to disable, or create a namespaced function shadowing
the global exit() function.
Elenco dei parametri
status
-
If
status
is a string,
this function prints the status
just before exiting.
The exit code returned by PHP is 0
.
If status
is an int,
the exit code returned by PHP will be status
.
Nota:
Exit codes should be in the range 0
to 254
,
the exit code 255
is reserved by PHP and should not be used.
Valori restituiti
As this terminates the PHP script, no value is returned.
Esempi
Example #1 Basic exit() example
<?php
// exit program normally
exit();
exit(0);
// exit with an error code
exit(1);
?>
Example #2 exit() example with a string
<?php
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or exit("unable to open file ($filename)");
?>
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.';
?>
Il precedente esempio visualizzerà:
Shutdown: shutdown()
Destruct: Foo::__destruct()
Example #4 exit() as a statement
<?php
// exit program normally with exit code 0
exit;
?>
Note
Avviso
Prior to PHP 8.4.0, exit() was a language construct
and not a function, therefore it was not possible to call it using
variable functions,
or named arguments.