古いプログラムのPHP8.1へのアップデート
PHP7.4系が2022年11月28日で公式サポート終了となりました。弊社でも古いプログラムをPHP8.1へアップデートしています。そのときの改修作業の記録です。
対象は、2015年頃に作成したプログラムです。当時はPHPが5.5~5.6ぐらいでした。
ファイル名:行 Undefined variable $変数名
定義されていない変数を呼び出すとエラーになります。
echo h($description);
PHP5の頃だと、↑のようにカジュアルに書いて画面出力するようなケースもありましたが、現在はエラーになります。
if (isset($description)) { echo h($description); }
↑のように、例えばisset($description)のように、変数がセットされているかチェックする必要があります。
ファイル名:行 Undefined array key $配列名
配列の定義されていないキーを呼び出すとエラーになります。先ほどは定義されていない変数でしたが、今回はその配列バージョンですね。
echo h($blog['description']);
PHP5の頃だと、↑のようにカジュアルに書いて画面出力するようなケースもありましたが、現在はエラーになります。
if (array_key_exists('description', $blog)) { echo h($blog['description']); }
↑のように、例えばarray_key_exists('description', $blog)のように、配列のキーがセットされているかチェックする必要があります。
Non-static method クラス::メソッド cannot be called statically
スタティックでないメソッドを、スタティックに呼び出そうとしているとエラーになります。
public static function メソッド()
↑のように、staticキーワードを追加しました。
※本記事では、弊社のプログラムの改修時に遭遇したものを列挙していますが、それ以外にも改修が必要なものがあるかもしれません。
新着ブログ記事
- 古いプログラムのPHP8.1へのアップデート
- Concrete CMSのアドオン「Free Map」「Favorite Pages」「Composer on Mobile Device」をバージョン9対応にしました。
- 月70万PVウェブ制作会社が、検索エンジン対策で実施する、たった1つの施策

ウェブ集客
クイズ、計算式など、ホームページ訪問者の興味・関心・満足度を高めるコンテンツを提供する仕組み。一度来てくださった方の再訪問率を高める。

濃い見込み客を見つけるホームページ自動見積もりシステム
自動見積計算と見積PDF作成を行うサービスです。濃い見込み客を抽出する仕組みで、御社のホームページを営業マンにします。

代表者の書籍
弊社代表の書籍です。専門学校の教科書・参考書としても採用実績があります。