技術情報・コラム

PHP 8.2のサポートは2026年12月31日で終了|バージョンアップの影響・進め方・費用

※本記事は2026年11月4日時点で公開されている情報をもとに作成しています。サポート期限や各社の対応は変わることがあります。実際の対応にあたっては、PHP公式サイトやご利用中のサーバー・クラウド事業者の最新情報を必ずご確認ください。

はじめに

2026年10月、PHPに重大な脆弱性「PHP2Shell」(CVE-2026-109618/109619)が見つかりました。10月26日には、実際に悪用が確認された脆弱性として米国CISAの一覧(KEV)にも登録されています。何が起きたかはPHP脆弱性「PHP2Shell」とは?影響範囲・修正版と、利用者の多いPHPだからこそ速かった対応でまとめています。

この件で、国内の主なレンタルサーバーの多くは、サポートが終わった古いPHPにも修正を当てて急場をしのぎました。ただ、なかにはその対策を「応急的なもの」と明記した事業者もあります。そして、今回は公式の修正版が出たPHP 8.2も、2026年12月31日でセキュリティサポートが終わります。

この記事では、PHPのバージョンアップで何が起きやすいか、どの順番で進めるか、費用をどう考えるか、そして作った会社と連絡がつかないなど自社で更新できないときにどうするかを整理します。

PHPのサポート期限 — 1つの版は4年で終わる

PHPは毎年11〜12月ごろに新しい版が出て、1つの版がサポートされるのは公開から4年間です(最初の2年は不具合とセキュリティの修正、残りの2年はセキュリティの修正のみ)。

PHPの版セキュリティサポートの期限
PHP 7.42022年11月28日(終了済み)
PHP 8.02023年11月26日(終了済み)
PHP 8.12025年12月31日(終了済み)
PHP 8.22026年12月31日
PHP 8.32027年12月31日
PHP 8.42028年12月31日
PHP 8.52029年12月31日

(出典:PHP公式 Supported Versions、Unsupported Branches)

期限を過ぎた版は、原則として公式の修正の対象外です。今回は、たとえばロリポップがPHP 7.4・8.0・8.1に、開発元が提供したサポート終了版向けの修正コードを適用しましたが、次も同じ対応があるとは限りません。WordPressはPHP 8.3以上を推奨し、サポートが終わった古い版については、セキュリティ上の脆弱性にさらされる恐れがあると注意しています(WordPress Requirements)。

今回は個別の修正で助かった。次も同じとは限らない

PHP2Shellの公開後、国内の主なレンタルサーバーの多くは、サポートが終わった版にも修正を当てました。ただし、その扱いは事業者によって違い、古い版を強制的に切り替えた事業者もあります。

  • ロリポップは、10月22日の未明から昼ごろまで一部のサーバーでサイトの表示を止めて対応し、PHP 8.1以下への修正を「応急的なもの」と明記したうえで、サポートが続いている版への切り替えを利用者に求めています(ロリポップのお知らせ)
  • Zenlogicホスティングは、PHP 5.3を最新の版へ強制的に切り替え、5.3には戻せないこと、表示崩れや動作エラーは利用者側で修正してほしいことを告知しました(Zenlogicのメンテナンス情報)

古い版のまま動いているサイトに、次も同じような修正が提供されるとは限りません。版の切り替えが必要になれば、そのときに動作の確認や改修が必要になる場合があります。慌ただしい状況で切り替えるより、計画して移るほうが確実です。

なお、ロリポップが求めている切り替え先は「8.2以降」ですが、8.2は2か月後にサポートが終わります。8.3も2027年12月31日までなので、1年ほどでまた同じ作業が来ます。これから移るなら、8.4以降も候補に入れて、何年使い続けるかから版を選ぶのがおすすめです。

バージョンアップで起きやすいこと

PHPの版を上げると、古い書き方が使えなくなったり、動きが変わったりします。よく起きるのは次のようなことです。

  • 画面が真っ白になる、「このサイトで重大なエラーが発生しました」と表示される(WordPressの場合)
  • 一部のページだけ表示が崩れる、管理画面にログインできない
  • 問い合わせフォームのメールが届かなくなる
  • 古いプラグインやテーマ、古いフレームワークが新しい版に対応していない
  • 決済や外部サービスとの連携だけが止まる

PHP 8.2から8.3・8.4へ上げるときに、業務システムで当たりやすい変更の例です(PHP公式の移行ガイドより)。

変更版当たりやすい場面
引数の既定値を null にした型指定(Foo $a = null)が非推奨に8.4古いコードに多い書き方。読み込むたびに警告が出る
round() の計算方法の見直し8.4金額や端数の計算で、以前と結果が変わる値がありうる
IMAP・OCI8(Oracle接続)が本体から外れた8.4メール受信の処理や、Oracleにつなぐシステム
password_hash() の既定の強度が上がった8.4ログイン処理が少し重くなる
動的プロパティ(クラスに無いプロパティへの代入)が非推奨8.2から古いフレームワークやライブラリ

非推奨は、その版ではまだ動きます。ただし、警告をエラーとして扱う設定のシステムでは、そこで止まることがあります。

PHP 7.4以前から一気に8.3以降へ移る場合は、途中の版で変わった点がまとめて効いてくるので、確認する範囲が広くなります。特に、10年近く前のフレームワークで作られたシステムは、フレームワーク自体を新しくしないと、新しいPHPで動かないことがあります。

進め方の順番 — 本番でいきなり切り替えない

弊社でも2026年10月、PHP2Shellの対応で、自社で管理しているサーバーのPHPを新しい版へ切り替えました。複数のサイトが同じサーバーに同居している環境です。お客様のシステムでも基本は同じ順番で進めます。

  1. 棚卸し:そのサーバーで何がPHPを使っているかを洗い出します。Webサイト本体だけでなく、問い合わせフォームのメール送信や定期実行の処理など、目立たない部分もPHPで動いていることがあります
  2. 検証環境で試す:本番と同じ構成を別の環境に再現し、新しい版で動かして不具合を洗い出します。お預かりしているあるサイトでは、共用のレンタルサーバーでPHP 7.4のまま動いていたため、まず手元に環境を再現して検証を進めています
  3. 直す:使えなくなった書き方の修正、プラグイン・テーマ・フレームワークの更新を行います
  4. 切り替える:元に戻せる手順を用意したうえで、本番の版を切り替えます
  5. 実際に使って確かめる:表示だけでなく、フォームを実際に送信してメールが届くか、管理画面で更新できるかまで確認します。弊社の切り替えでも、最後はフォームの送信テストで確認を終えています

「動いているから大丈夫」と、表示の確認だけで終えないことが大切です。フォームやメール、定期処理は、壊れていても見た目では分かりません。

費用の考え方

費用は、何がどれだけ古いかで大きく変わります。

  • WordPressだけの小さなサイト:PHPの切り替えとプラグイン・テーマの更新で済むなら、作業は比較的小さく済みます。古いテーマを作り直す必要がある場合は、その分の作業が加わります
  • 独自に作られたWebシステム・業務システム:コードの修正やフレームワークの更新が必要になると、規模によって数十万円以上かかることもあります
  • まず現状を知りたい場合:何がどの版で動いているか、何を直す必要があるかを先に調べると、見積もりの根拠がはっきりします

弊社では、システムを構成する技術の版を洗い出し、公表されている脆弱性の影響と対応の優先順位を報告書にまとめるスポット調査を10万円(税別)からお受けしています。必要な作業は調査の結果をもとに見積もります(目安20万円・税別〜)。

自社で更新できないときの選択肢

「作った会社と連絡がつかない」「作った社員が退職した」「社内の担当者が作ったが、本人ももう手に負えない」——こうした理由で、更新したくても手が出せないケースは少なくありません。そのときの選択肢は大きく3つです。

  1. 現状を調べてから、更新を頼む:まずスポット調査で何が古いかを確かめ、必要な作業だけを頼みます。そのまま継続の保守に移ることもできます(他社が開発したシステムの引き取り保守)
  2. 作り直す:会社のホームページのように、古い仕組みを直し続けるより作り直したほうが負担が軽い場合もあります。弊社のホームページ制作(おまかせプラン)は、PHPなどのサポート期限前のバージョンアップまで運用保守費に含めています
  3. すぐに手を打てないなら、止める・絞る:IPAは、修正の見通しが立たない場合、外部からのアクセスの遮断やサービスの一時停止に加え、公開の終了やシステムの廃止まで含めて検討するよう呼びかけています(IPAの注意喚起)。社内だけで使うシステムなら、外部からアクセスできないようにするだけでも危険は大きく下がります

どれを選ぶにしても、年末のサポート終了が迫ってから動くと、検証の時間が取れません。PHP 8.2以前で動いているなら、今のうちに現状を確かめておくことをおすすめします。

まとめ

  • PHPの1つの版は4年でサポートが終わる。PHP 8.2は2026年12月31日で終了
  • PHP2Shellでは古い版にも多くの事業者が個別に修正を当てたが、「応急的なもの」と明記した事業者もある。次も同じ対応が受けられるとは限らない
  • バージョンアップは、棚卸し→検証環境で試す→直す→切り替える→実際に使って確かめる、の順番で。フォームやメールまで確認する
  • 自社で更新できないときは、現状を調べてから頼む・作り直す・止めて絞る、の3つから選ぶ

「うちのシステムは何の版で動いているのか分からない」という段階でも構いません。お問い合わせフォームから、分かる範囲でお聞かせください。

参考

システム開発・DX導入のご相談

記事の内容について詳しく知りたい方や、具体的なプロジェクトのご相談など、お気軽にお問い合わせください。

お問い合わせフォーム
TEL: 03-6228-1680
(平日10:30~16:30)