(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 'Destruct: ' . __METHOD__ . '()' . PHP_EOL;
}
}
function shutdown()
{
echo 'Shutdown: ' . __FUNCTION__ . '()' . PHP_EOL;
}
$foo = new Foo();
register_shutdown_function('shutdown');
exit();
echo 'これは出力されません。';
?>
上の例の出力は以下となります。
Shutdown: shutdown() Destruct: Foo::__destruct()