【PHPエラー】Warning: Use of undefined constantの解決方法
PHPでプログラムを作っていると突然表示されるエラー文章。突然エラーが表示されると焦ってしまいますよね。
この記事ではWarning: Use of undefined constant
というPHPでプログラムを作っているとよく発生するエラーについて原因と、解決方法を解説します。
この記事の目次を表示
Warning: Use of undefined constantとは
早速ですが、このエラーについて、実際にどのように表示されるのか見ていきましょう。
arning: Use of undefined constant ●● - assumed '▲▲' (this will throw an Error in a future version of PHP) in ■■ on line ××
Warning: Use of undefined constant
はこのように表示されます。
上の例の●●、▲▲、■■、××はそれぞれ以下のようなことを教えてくれています。
- ●●:間違っている記述
- ▲▲:正しい記述
- ■■:誤った記述がされている「ディレクトリ名/ファイル名」
- ××:エラーの原因となる●●が書かれている行数
具体的には「■■ファイルの××行目に書かれている●●は記述が間違っていて’▲▲’のようにシングルクォーテーション、またはダブルクォーテーションで囲う必要があるよ」ということを教えてくれているエラーメッセージとなっています。
エラーが表示される原因・具体例
このWarning: Use of undefined constant
は未定義の定数・変数が使用されている際に表示されるエラーとなっていて、PHPをバージョンアップした際によく表示されるエラーです。
今までは厳密には文法上、間違っているがPHPが頑張って動いていてくれたけど、PHPのバージョンがアップしたことにより、より厳密にプログラミングしないといけなくなり、突然表示されるようになります。
<?php
echo $BLOG[key] = "【PHPエラー】Warning: Use of undefined constantの解決方法";
?>
このような記述をしているとPHPのバージョンによってはWarning: Use of undefined constant
が表示されます。
Warning: Use of undefined constantの解決方法
上で書いた通りWarning: Use of undefined constant
はPHPのバージョンが変わったことにより、今まではよかった記述が厳密化されたことによりエラー表示されるというものなので、指摘されている個所を正しく記述しなおすことで解決出来ます。
先ほどの例の場合には以下のように変更することで解決出来ます。
<?php
echo $BLOG['key'] = "【PHPエラー】Warning: Use of undefined constantの解決方法";
?>
[key]となっていた部分を[‘key’]のようにシングルクォーテーションで囲ってあげました。たったこれだけです。
配列のキー部分をシングルクォーテーション、またはダブルクォーテーションで囲ってあげるだけで解決出来ます。
PHPバージョンアップによる起こるその他のエラー
PHPをバージョンアップすることにより起こるエラーはWarning: Use of undefined constant
の他にもいくつか存在しています。
以下でご紹介していますのでご自身のWEBサイトで起こっているエラーがあれば合わせて確認してみて下さい。
まとめ
いかがでしたか?
PHPをバージョンアップすることにより、記述がより厳密化されたことにより、エラーが表示されるようになることは多々あります。
PHPをバージョンアップする際は、事前にテスト環境などで検証の上、バージョンアップしたいですね。