ロビン・ニクソンの本からのコード:
<?php
if (isset($_POST['name'])) $name = $_POST['name'];
else $name = '(enter your name)';
echo <<<_END
<html>
<head>
<title>Test</title>
</head>
<body>
Your name is $name<br />
<form method = 'post' action = 'count.php'>
What's your name?
<input type='text' name='name' />
<input type='submit' />
</form>
</body>
</html>
_END
?>
2 行目では、変数が設定されているかどうかを で確認しisset()
ます。3 行目に条件があります。設定されていない場合、スクリプトは「名前を入力してください」と出力します。それは私が理解していないことです:私はこのページを開きます-それは印刷されます:
あなたの名前 (あなたの名前を入力してください) あなたの名前は何ですか? (および提出フォーム)
何も入力せずに「送信」を押すと、次のように出力されます。
あなたの名前は (「名前を入力してください」とは印刷されません) あなたの名前は何ですか? (および提出フォーム)
何も入力しませんでしたが、関数は、変数が 以外の値に設定されていることを示しましたNULL
。なんで?空の値を渡す場合、なぜそれを使用するのでしょうか? なぜ使用しないのempty
ですか?しかし、すべてのプログラムで、このような解決策が見られます。なぜisset()
そこで関数を使用する必要があるのですか? 何がわからないのですか?