フォームから送られたデータに項目抜けを検出して戻ろうとする時に
header()関数を使っても、すぐジャンプされる訳ではありません。
それ以降のプログラムも実行してしまいます。
header()関数の実行部分に変数に値を持たせて以降をif文で実行しないように
コードを書く事もできますが長文になり読みにくくなったりします。
そんな時には、その場でphpの処理を終了する命令があります。
phpを中断する方法
■exit;
実行するとphpの処理が終了します。
返り値はありません。
例1:
<?php header("location: test_2.php?send=".urlencode("あいうえお")); header("location: test_2.php?send=".urlencode("ABCDE")); ?>
例2:
<?php header("location: test_2.php?send=".urlencode("あいうえお")); exit; header("location: test_2.php?send=".urlencode("ABCDE")); ?>
例1を実行するとtest_2.phpにジャンプしますが
GETメソッドでsendに「ABCDE」と入れられてしまいます。
例2を実行するとtest_2.phpにGETメソッドでsendに
「あいうえお」と入れられてジャンプします。
「ABCDE」を実行する前に「exit;」で終了しているので以降のコードを無視されます。
次回は、すでに画像ファイルが存在しているかを調べる関数を紹介します。