【blog】MAMPのPHPのバージョンをPHP8にしたら「Warning:Undefined_variable」と「Warning: include(): Failed opening」が出まくったので、修正してみた
こんにちは(・∀・)
web design lab中の人です。
今まで、MAMPのPHPのバージョンも、サーバーのPHPのバージョンも7だったので、気が付かなかったんだけど、MacBook Airに変えてMAMPも新しくしたら、PHPのバージョンが8だった。
それでWebサイトをローカルで動作させてみたらPHPがエラーを吐きまくったので、それらエラーをすべて修正しました。
MAMPのPHPのバージョンをPHP8にしたら「Warning:Undefined_variable」と「Warning: include(): Failed opening」が出まくったので、修正してみた
まずは「Warning:Undefined_variable」のエラー。

調べてみると、PHP8からは未定義の変数を使用すると「Warning: Undefined variable」のエラーが返ってくるようになったみたい。サーバーのPHPのバージョンは7だから、それまでは見過ごしてくれてたようだ(PHP7ではNotice(注意)だったが、PHP8からはWarning(警告)になった)。
Warning(警告)だから今のところ動くには動いているけど、警告文がWebサイトに出てるのはかなりよろしくないので、修正しないといけない。
エラーコードを辿って未定義の変数を探すと結構出てきたので、それらすべて変数を定義(宣言)してエラーを回避する。
こんな感じで。
$〇〇 = '';
これで、「Warning: Undefined variable」のエラーは回避出来たから、使用している未定義の変数すべて、コードの最初で変数を初期化した。そうしたらエラーコードの吐き出しは収まってくれた。
<?php
$〇〇 = '';
$◻︎◻︎ = '';
$△△ = '';
?>
次は、「Warning: include(): Failed opening」のエラー。

ファイルパスを確認してみると、絶対パスになっていたが合ってると思う。今までエラーも出てなく読み込めていたし。
試しに全部相対パスにしてみるとすべての「Warning: include(): Failed opening」エラーが収まった。
それだけ!?
contents
参考
PHP8へのアップデートで発生する未定義変数( Warning: Undefined variable )エラーの対応策 | ホームページ更新倶楽部|お気軽にサイト修正



