ホームページ >バックエンド開発 >PHPチュートリアル >PHP で「未定義定数の使用」エラーが発生するのはなぜですか?
未定義定数の使用: PHP エラーを理解する
PHP の「未定義定数の使用」エラーは、参照しようとしていることを示していますコードの現在のスコープ内で定義されていない定数。定数は、スクリプトの実行を通じて変更されない名前付きの値であり、const キーワードまたは ALL_CAPS で記述されることによって示されます。
エラーの説明
コード内:
$デパートメント = mysql_real_escape_string($_POST[部門]);
$name = mysql_real_escape_string($_POST[名前]);
$email = mysql_real_escape_string($_POST[email]);
$message = mysql_real_escape_string($_POST[message]);
mysql_real_escape_string への引数として配列キー (「部門」、「名前」、「電子メール」、「メッセージ」) を使用しています。 () 関数。ただし、これらのキーは定数として定義されていないため、PHP はそれらを文字列として解釈します。
解決策
このエラーを解決するには、配列キーを引用符で囲みます:
$デパートメント = mysql_real_escape_string($_POST['Department']);
$name = mysql_real_escape_string($_POST['name']);
$email = mysql_real_escape_string($_POST['email']);
$message = mysql_real_escape_string($_POST['message']);
これにより、配列キーを変数として定義し、未定義の定数を使用する必要がなくなります。
追加情報
以前PHP 8 では、未定義の定数を使用すると警告が表示されました。ただし、PHP 8 以降ではエラーが発生します。この変更は、コードの品質を向上させ、未定義の定数を文字列として解釈することで生じる可能性のある潜在的な問題を防ぐために行われました。
以上がPHP で「未定義定数の使用」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。