2026年10月時点で、PHP公式がサポートしているのは8.2・8.3・8.4・8.5の4系列です。このうち8.2は2026年12月31日でサポートが終わります。8.1以前(7系・5系を含む)はすでにサポートが切れており、新しい脆弱性が見つかっても公式の修正版は出ません。

今からバージョンアップするなら、上げる先は8.4か8.5が候補です。8.2や8.3に上げても、1〜2年でまた上げ直すことになります。

本記事では、PHP公式のサポート期限の一覧とサポートが終了したバージョンの一覧をもとに期限を整理し、バージョンアップの進め方と、費用が大きく変わる要因を説明します(調査時点: 2026年10月)。

PHPのサポート期限一覧(2026年10月時点)

PHPの各系列は、リリースから2年間のアクティブサポート(バグ修正とセキュリティ修正)と、その後2年間のセキュリティサポート(重大なセキュリティ問題の修正だけ)を受けられます。合計4年で終わり、期限はいずれもその年の12月31日です。新しい系列は例年11月下旬にリリースされています。

サポート中のバージョンは次のとおりです。

バージョンリリース日アクティブサポート終了セキュリティサポート終了
8.52025年11月20日2027年12月31日2029年12月31日
8.42024年11月21日2026年12月31日2028年12月31日
8.32023年11月23日2025年12月31日(終了)2027年12月31日
8.22022年12月8日2024年12月31日(終了)2026年12月31日

出典: PHP公式「Supported Versions」(調査時点: 2026年10月)

サポートが終了したバージョンは次のとおりです。

バージョンサポート終了日最後のリリース
8.12025年12月31日8.1.34
8.02023年11月26日8.0.30
7.42022年11月28日7.4.33
7.32021年12月6日7.3.33
7.22020年11月30日7.2.34
7.12019年12月1日7.1.33
7.02019年1月10日7.0.33
5.62018年12月31日5.6.40

出典: PHP公式「Unsupported Branches」(調査時点: 2026年10月)

古いPHPを使い続けているサイトは少なくありません。W3Techsの調査では、PHPを使うWebサイトのうち7系が26.9%、5系が7.7%を占めています(W3Techs、2026年10月22日時点)。8系の中にもサポートが切れた8.0・8.1が含まれるため、サポート外のPHPで動いているサイトはこれより多いと考えられます。

サポートが切れたPHPを使い続けると何が起きるか

重大な脆弱性が出ても、公式の修正版が出ない

一番大きいのは、新しく見つかった脆弱性が直らないことです。2026年10月21日に公表されたPHPの脆弱性php2shellでは、8.2・8.3・8.4・8.5には修正版が出ました。一方、8.1以前には公式の修正リリースが出ず、7.4・8.0・8.1向けに最小限のソースパッチが公開されただけでした。ソースパッチは、PHPを自前でビルドしている環境向けのものです。

UbuntuやRed Hat系などのOSが配布するPHPパッケージでは、OS側のサポート期間中は古い系列にも修正が取り込まれることがあります。ただし、それもOSのサポート期限までです。OSごとの対応状況はphp2shellのサービス別対応状況にまとめています。

NERSCのデータセンターに並ぶサーバーラックの実写
サーバー設備の参考写真。NERSC、2011年撮影。 写真:Derrick Coetzee / Wikimedia Commons(CC0)。

レンタルサーバーで「選べる」ことと「サポートされている」ことは別

レンタルサーバーの管理画面で古いPHPを選べるからといって、そのバージョンが安全とは限りません。たとえばさくらのレンタルサーバのPHP提供ポリシーでは、セキュリティサポートが終わったバージョンも原則として提供を続けるとしています。一方で、重大なセキュリティ問題が見つかった場合は即日で提供を終えることがあり、その場合は近い上位のバージョンへ移されるとしています(調査時点: 2026年10月)。

つまり、古いPHPのまま放っておくと、脆弱性を抱えたまま動き続けるか、ある日突然新しいバージョンに切り替わって画面が動かなくなるか、のどちらかになりやすいということです。後者は、利用者の都合とは関係なく起こります。

CMSやフレームワークの更新も止まる

PHPが古いままだと、その上で動くソフトウェアも更新できなくなります。WordPressはPHP 8.3以上を推奨しており、7.4以上でも動くとしつつ、サポートが終わったバージョンは脆弱性にさらされるおそれがあると注意を出しています(WordPress公式の動作環境)。プラグインの新しい版が古いPHPに対応しなくなると、プラグインの脆弱性も直せなくなります。

どのバージョンに上げるか

2026年10月時点で、今の系列ごとの上げる先の目安は次のとおりです。

今使っているPHPごとの上げる先の目安(2026年10月時点)
今のバージョン状態上げる先の目安注意点
8.4・8.5サポート中同じ系列の最新版を当て続ける8.4のアクティブサポートは2026年末まで。セキュリティ修正は2028年末まで続く
8.3セキュリティサポートのみ8.4か8.5期限は2027年末。1年かけて計画できる
8.22026年12月31日で終了8.4か8.5残り約2ヶ月。年内に間に合わなければ、移行までの期間をどう守るかも決める
8.0・8.1サポート終了8.4か8.5フレームワークやプラグインの更新が必要になることが多い
7系・5系サポート終了8.4か8.5変更点が多く、改修や作り直しの検討が必要になることがある

最終的に決めるのは、その上で動くソフトウェアの対応状況です。

  • WordPress: 本体はPHP 8.3以上を推奨しています。使っているテーマとプラグインが上げる先のPHPに対応しているかを、それぞれの配布ページや更新履歴で確認します
  • Laravel: Laravel 13はPHP 8.3以上が必須で、8.3〜8.5に対応しています。Laravel 12は8.2〜8.5に対応し、セキュリティ修正は2027年2月24日までです。Laravel 11以前はすでにセキュリティ修正が終わっています(Laravel公式のサポートポリシー、調査時点: 2026年10月)
  • OS・サーバー: 自社で管理するサーバーでは、OSの標準パッケージで提供されるPHPのバージョンが限られることがあります。OSの更新が先に必要になる場合は、その作業も計画に含めます

フレームワークが古いままPHPだけを上げることはできないことが多く、PHPのバージョンアップがフレームワークのメジャー更新とセットになる場合があります。費用が膨らみやすいのはこのケースです。

バージョンアップの手順

棚卸し

PHPが動いている環境と、Webサーバー経由で動いているバージョン・管理者を一覧にする

上げる先を決める

PHPのサポート期限と、CMS・フレームワーク・プラグイン・OSの対応状況を照らし合わせる

影響調査

移行ガイドと静的解析で、動かなくなる箇所を洗い出す

検証

本番と同じ構成の検証環境で、主要な機能とエラーログを確認する

切り替え

バックアップを取って本番を切り替え、切り戻しの手順を用意しておく

定例化

次の期限を記録し、期限の1年前を目安に次の更新を計画する

Fig. 01 — PHPのバージョンアップは、調査と検証に時間をかけ、切り替えは短く終わらせます

1. PHPが動いている環境とバージョンを洗い出す。 自社サイトだけでなく、問い合わせフォーム、予約システム、社内の業務システム、制作会社に任せたキャンペーンサイトも含めて一覧にします。サーバー上で php -v を実行して出るのはコマンドライン用のPHPで、Webサイトを動かしているPHPとは別のことがあります。WordPressなら管理画面の「ツール」→「サイトヘルス」→「情報」→「サーバー」で、Webサーバー経由のバージョンを確認できます。

WordPressなら、ここで確認
ツールサイトヘルス情報サーバー
確認する行:PHP version(PHPバージョン)
WordPress公式資料のサーバー情報。Server architecture、Web serverの下にPHP versionが表示される画像を拡大 ↗
表示されたバージョンを控え、利用中のサーバー事業者の告知と照合してください。
画面引用:WordPress.org「Site Health screen」のサーバー情報欄を抜粋。 公式資料の過去の表示例で、画面内の7.3.5は修正版ではありません。

2. 上げる先のバージョンを決める。 前の節の表と、使っているソフトウェアの対応状況を照らし合わせます。対応していないプラグインやライブラリが見つかったら、更新するか、別のものに置き換えるか、使うのをやめるかを決めます。

3. 動かなくなる箇所を調べる。 PHP公式は系列ごとに移行ガイドを公開しており、削除された関数や、動きが変わった機能がまとまっています(例: PHP 8.3から8.4への移行ガイド)。間の系列を飛ばして上げる場合は、間のすべての移行ガイドを確認します。独自のコードが多い場合は、PHP_CodeSnifferのPHPCompatibilityのような互換性チェックや静的解析ツールで、影響する箇所を機械的に洗い出すと見落としが減ります。

4. 検証環境で動作を確認する。 本番と同じ構成の検証環境を用意し、新しいPHPに切り替えて動かします。問い合わせフォームの送信、決済、会員ログイン、管理画面での更新など、止まると困る機能から確認し、エラーログに非推奨(Deprecated)の警告が出ていないかも見ます。今は警告でも、次のバージョンでエラーになる箇所です。

5. 本番を切り替え、切り戻しの手順を用意する。 バックアップを取ってから切り替え、Webサーバー経由のバージョンが変わったことを確認します。問題が出たときに元のバージョンへ戻せるか、戻すかどうかを誰がどの基準で判断するかを、事前に決めておきます。

6. 次の期限を記録し、更新を定例にする。 PHPは毎年新しい系列が出て、毎年どれかの系列のサポートが終わります。上げたバージョンの期限を記録し、期限の1年前を目安に次の更新を計画すると、期限直前に慌てずに済みます。ライブラリやOSも含めた更新の管理はWebサービス事業者のセキュリティ対策でまとめています。

費用が大きく変わる4つの要因

PHPのバージョンアップの費用は、同じ「バージョンアップ」でも作業量に大きな差があり、一律の相場では比べにくい作業です。見積もりを読むときは、次の4点を確認してください。

要因費用が小さく済む場合費用が大きくなる場合
バージョンの差8.3→8.4のように1つ上げるだけ7系や5系から8系へ、複数の系列をまたぐ
独自のコードの量WordPressの標準機能と、有名なテーマ・プラグインだけで作られているPHPで書いた独自の機能や、手を入れたプラグインが多い
フレームワーク・プラグインの更新使っているものがすでに上げる先に対応しているフレームワークのメジャー更新や、プラグインの置き換えが必要
検証の環境とテスト検証環境があり、主要な機能の確認手順やテストが揃っている検証環境がなく、どこが壊れたかを人が画面で確かめるしかない
HTMLとSVGのコードが表示された開発画面の実写写真
開発画面の参考写真。表示されているのはHTMLとSVGで、PHPの改修例ではありません。 写真:Florian Olivo / Unsplash(Unsplash License)。

大まかには、次の3段階に分かれます。

  • 設定の切り替えで済む: レンタルサーバーの管理画面でPHPのバージョンを切り替え、動作を確認するだけで終わる場合。WordPressとプラグインが対応済みなら、このケースに収まることがあります
  • コードの修正を伴う: 削除された関数や、動きが変わった機能を使っている箇所を直す場合。修正箇所の数と、検証にかかる手間で費用が決まります
  • フレームワークの更新や作り直しを伴う: フレームワークが新しいPHPに対応しておらず、フレームワークごと上げる必要がある場合。古いシステムでは、改修より作り直しのほうが合理的なこともあります

見積もりは、「現状の調査」と「改修・検証・切り替え」に分けて取ると比べやすくなります。調査をせずに一式で出された見積もりは、調査で分かるはずのリスクを見込んで高めになるか、後から追加費用が出やすくなります。

委託先に確認すること

サイトやシステムの保守を制作会社・開発会社に任せている場合は、次の点を確認してください。

  • 今動いているPHPのバージョンと、そのサポート期限を把握しているか
  • 保守契約の範囲に、PHPやOSのバージョンアップが含まれているか(含まれない場合、誰が費用を持つか)
  • 上げる先のバージョンと、テーマ・プラグイン・フレームワークの対応状況
  • 検証環境があるか。ない場合、どう確認してから本番を切り替えるか
  • 切り替えで問題が出たときに、元に戻せるか

保守契約を結ばずに制作だけを外注したサイトは、誰もPHPを更新しないまま公開され続けていることがあります。使っていないサイトは、この機会に閉じることも検討してください。古いWordPressサイトを続けるか移すか迷っている場合は、WordPressから乗り換えるべきかの判断基準も参考になります。

当社でお手伝いできること

当社は受託開発のほか、SRE顧問として、インフラの構成管理や更新の運用を担当しています。「PHPがどこで、どのバージョンで動いているか分からない」「上げたいが、フレームワークやプラグインが新しいPHPで動くか分からない」「7系のまま止まっている業務システムを、改修するか作り直すか決めたい」といった段階から相談を受けています。

バージョンアップの範囲の見極めや見積もりの読み方についても、受託開発のお問い合わせからご相談ください。