PHP バージョンアップの注意点

PHPバージョンアップの注意点タイトルイメージ

PHP バージョンアップ時の注意点をまとめます

PHP をバージョンアップする理由

パフォーマンス向上セキュリティ向上
PHP のバージョンアップにはメジャーバージョンアップとマイナーバージョンアップの2種類が存在。
メジャーバージョンアップは機能追加やパフォーマンス向上の為に行われ、マイナーバージョンアップはバグの修正などセキュリティ向上の為に行われる。


メジャーバージョンアップ(PHP5.x から PHP7.x、PHP7.x から PHP8.xなど)

  • 新機能追加
  • パフォーマンス向上

マイナーバージョンアップ(PHP7.3 から PHP7.4、PHP8.0 から PHP8.1など)

  • 脆弱性、バグなどのセキュリティ向上

基本的に新しいバージョン(数値が大きい)の方が機能的、パフォーマンス的、セキュリティ的に優れている。 古いバージョンはセキュリティ面で危険にさらされている可能性がある。その為、バージョンアップを検討する必要がある。
又、PHP で制作された既存Webシステムをバージョンアップする場合、メジャーバージョンアップの方が対応工数・コストが大きくなる。 時間もお金もかかる。


PHP バージョンアップの実施項目

主に次の3点。

  • PHP(本体)のバージョンアップ
  • PHP システムのプログラム修正(プログラムの知識が必要)
  • 動作テスト

Attention ...

PHP(本体)のバージョンアップ だけではエラーが発生して正しく動作しない場合あり。 エラー内容を確認して PHP システムのプログラムを修正するのが一般的。


PHPバージョンアップは株式会社ユービーにご相談ください

PHP バージョンアップの 無料お見積り 実施中!

最新の PHP にバージョンアップします@株式会社ユービー

対応手順

システムの構成把握

  • 現在の PHP バージョン
  • 現在のインストール済み PHP 関連パッケージ
  • 現在の PHP 設定(php.ini)
  • DB の利用有無とバージョン
  • CMS(プラグイン含む)の利用有無とバージョン
  • PHP フレームワークの利用有無とバージョン
  • 他サービス、システム(決算システム、API サービス利用など)の連携有無

Attention ...

CMS(プラグイン含む)/PHP フレームワークが新しくする PHP のバージョンに対応していない場合、 CMS(プラグイン含む)/PHP フレームワークもアップグレードするかどうかの検討が必要。


システムの機能把握

  • システムの全機能を洗い出しテスト仕様書を作成

移行先システムの構成決定

  • 新規 PHP のバージョン決定
  • CMS/PHP フレームワークのアップグレードバージョン決定(必要な場合)

Attention ...

スケジュール、予算を考えて決定する必要がある。


移行先サーバー環境(開発/テスト用)用意

  • 新規 PHP(本体)のインストール
  • PHP 関連パッケージのインストール
  • PHP 設定対応(php.ini)
  • CMS/PHP フレームワークのアップグレード
  • PHP システムのプログラム修正
  • テスト実施/動作確認

Attention ...

移行先と同じバージョン、構成のサーバーを構築し、プログラムの修正、動作テストを実施する。開発/テスト用サーバーを用意できない場合、ローカル環境にサーバーを構築して実施。


移行先サーバー環境(本番)構築

  • メンテナンス画面表示
  • 現在の PHP(本体)と PHP 関連パッケージの削除
  • 新規 PHP(本体)のバージョンアップ
  • PHP 関連パッケージのインストール
  • PHP 設定対応(php.ini)
  • 構成ファイル移行(修正ファイル、CMS/PHP フレームワークファイル)
  • DB データ移行(必要な場合)
  • テスト実施
  • メンテナンス画面非表示

Attention ...

問題が発生した場合すぐ復元できるようにバックアップやスナップショットなど準備をおこたらない。


事前チェックシート

PHP システム構成の現状とアフターを把握。業者への相談もこの内容でいい。

SUBJECTITEMNOWAFTER
既存システム構成 OS(version)
PHP(version)
PHP設定(php.ini)
PHP関連パッケージ
DB(version)
CMS(version)
Framework(version)
others
システム機能 item lists
その他 予算
limit
重要事項

ポイント

  • PHPバージョンのセキュリティサポート期限を確認しサポート終了前にバージョンアップするか検討する(https://www.php.net/supported-versions.php)
  • 既存システムが古い場合、修正対応が多くなり対応工数・費用が大きくなる為、リニューアルも考える
  • 不明点は業者に相談するのもあり。無料相談や無料で見積りをしている会社を探し連絡する

エラーの対応

PHP バージョンアップでエラーが出たら見直したいこと

▼ E_NOTICE(注意メッセージ)とE_DEPRECATED(推奨エラー)がページに多数表示される

プログラムを修正するか、あきらめてページにエラーを表示しない設定(php.ini)に変更する

php.ini

display_errors = Off