PHP 7とは何か、そしてWordPressで使い始めるには?
- By Sourav Kundu
- May 15, 2019
PHP 7 はインターネットの 82% 以上に力を与えるサーバー側ソフトウェアの歴史上で最も大きな更新であり、このガイドで、それをWordPressと使用するインとアウトについて述べます。
PHP 7 の驚くべき利点について説明し、推奨される最小バージョン (5.6) を遵守することの重要性を理解できるようにします。 また、WordPress サイトが PHP 7 に対応しているかどうかを確認する方法を学び、この新しいバージョンにアップグレードすることの利点と欠点を測定します。
このガイドの終わりには、あなたは PHP をしっかりと理解し、推奨の最小値に更新する、あるいは PHP 7 への次のステップを踏むことに十分納得しているはずです。
始めましょう…
A Beginner’s Guide to PHP – What Is PHP?
このトピックをまったく知らない人のために説明すると、PHP はサーバー側のスクリプト言語であり、要求に応じて HTML ページを生成するように設計されています。 PHP エンジンへの入力として、PHP スクリプトの形式で書かれた一連のコマンドを入力します。 PHPエンジンはサーバー上でスクリプトを実行します。
上記の 3 つのステップのプロセスでは、いくつかの構成要素を確認することができます。
- The PHP script(s)
- PHP Engine
- Server
- 出力 HTML
さて、これらが典型的な WordPress 環境とどう関係しているかを見ていきましょう。 WordPress は基本的に、PHP、JavaScript、CSS などの複数のスクリプト言語で書かれたコードの膨大で組織的なコレクションですが、その中でも主要なものは PHP です。
2) PHP エンジン: PHP スクリプトに記述された命令を実行する中心的なコンポーネントと考え、それが実行されているサーバーの助けを借りて実行します。 PHPエンジンは最も重要なコンポーネントの一つであり、ウェブサイトのスピード、パフォーマンス、信頼性に影響を与えます。 また、今回の議論の中心でもあります!
3) サーバー。 これは、WordPress サイトがホストされている「Web ホスト」とも呼ばれるリモート コンピュータのことです。 PHP がインストールされていない Web ホストがあった場合、WordPress はその上で動作しません。
4) 出力 HTML。 WordPressのウェブサイトがロードされるたびに、PHPエンジンが呼び出されます。 スクリプトは、サーバーを使用してPHPエンジンによって実行され、最終的な(または出力)HTMLは、訪問者のウェブブラウザにエクスポートされます。
PHP 7 とは何ですか?
PHP スクリプトが何であるかがわかったので、PHP エンジンについて話しましょう。 記事の残りの部分では、「PHP エンジン」と「PHP」という用語を同義に使用します。
PHP 7 は 2016 年 12 月に発売された PHP エンジンで、多数の新機能、パフォーマンスの改善、セキュリティの強化が搭載されています。 5869>
A Brief History of PHP
PHPは、1994年にRasmus Lerdorfが個人のホームページを簡単に更新できるツールを作ろうとスクリプト言語としてリリースされました。 *このサイドプロジェクトが進化して、Facebook や WordPress などの大企業を含むすべての Web サイトの 82% を動かすようになるとは、彼は知りませんでした。 最初のものは1995年で、その後、1997年にバージョン2.0がリリースされました。 1998 年にバージョン 3.0、2000 年にバージョン 4.0 がリリースされました。
PHP 7 が特別なのは、その期待感でしょうか
ここからが面白くなってきました。 PHP のバージョン 5 は、4 年後の 2004 年にリリースされました。 委員会がバージョン 6 をスキップしてバージョン 7 にジャンプすることを決定したほどです。 つまり、PHP 5の最初のイテレーションは2004年にリリースされたバージョン5.0である。 その最後の反復である PHP 5.6 は 10 年後の 2014 年にリリースされました。
その 2 年後に PHP 7 が登場しましたが、これはこれまでの PHP のリリースで最も有望なものでした。 要するに、世界は PHP 7 を手に入れるために 12 年間も待たされたのです。
Performance Improvements in PHP 7
この待ち時間は無駄にはなりませんでした。 PHP 7 には、トラック 1 台分のパフォーマンスとセキュリティの改良が施されています。 堅実なベンチマークに裏打ちされた各パフォーマンスの向上を掘り下げてみましょう。
1) 大幅に向上した帯域幅 (秒あたりのリクエスト)
PHP 7 は PHP 5.6 よりほぼ倍良く、WordPress 4.1.1 で動作しました。2) 同時使用ユーザーのための低遅延
遅延は、サーバーとクライアント間の最初のリクエストと最初のレスポンスの間に経過した時間の量である。 レイテンシが小さいほど、良いサービスであることを意味します。 PHP 7 がどのように処理しているかを確認してみましょう。
各 PHP エンジンの同時使用ユーザー数に基づいて 3 つのデータを取りました。
- オレンジ色のバーは、10 人が同時にサイトを使用したときの遅延を表します。
- 青いバーは、その 2 倍 (つまり、同時使用ユーザー数が 20 人の場合)。
- ピンクのバーは、同時使用ユーザー数が 40 人の場合。
すべての場合において、PHP 7 は以前のバージョンを圧倒しています。 これは、必要な互換性チェック (詳細は後述) をすべて行った上で PHP 7 にアップグレードした場合、パフォーマンスが 2 倍になることを意味します。
3) WordPress 4.0+ リリースは PHP 7 に最適化されている
WordPress 4.0 自体は PHP 7 の最新機能を利用するために微調整されました。 Zend によると、前身の WordPress 3.6 と比較して、同じハードウェアでほぼ 2 倍のパフォーマンスになっています。
上のグラフでは、WordPress のメジャー アップデートで 2 倍のパフォーマンス向上があることがわかります。 このベンチマークは、PHP のバージョンとは無関係です。 むしろ、WordPress コミュニティが、次期バージョンの PHP に向けて継続的にコードを最適化していることを表しています。 同じタスクをより少ない命令で実行するために、とんでもなく最適化されています。 たとえば、PHP 5.6 での 1 つの WordPress リクエストは、1 億の CPU 命令で実行されます。 一方、PHP 7では、同じリクエストが2,500万CPU命令で実行されます。 これは、同じ仕事をするのに必要なコマンドの数が 75% 減少したことになります!
5) パフォーマンスの大幅な向上
WP Engine の常駐オタクである Jason Cosper は、最新の PHP エンジンをいじり、どれが最もうまく機能するかを調べるのが大好きです。PHP 5.5 よりも 6 倍速い – WordPress 4.3.1 と bbPress を実行)
State of WordPress PHP in Q1 2017
さて、PHP 7 のメリットを機能的に理解したところで、どのくらいの WordPress ユーザーがそれを使用しているか見てみましょう
良い点
。 WordPress の公式統計によると、2017 年 4 月 20 日時点で、WordPress コミュニティの 9% が PHP 7 にアップグレードしています。
The Okay: WordPress ユーザーの約 40% が PHP 5.6 を使用しています。 PHP 5.6 は 2018 年 12 月 31 日までセキュリティ サポートを受けるので、これは比較的良いニュースです。
The Ugly: しかし、本当に悪いニュースは、アクティブな WordPress サイトの 50% 以上が 5.6 より古いバージョンの PHP を使用しており、これらのサイトすべてが深刻な脆弱性の問題にさらされていることです。
- PHP 5.4 は 2015 年からパッチされていません。
- そして PHP 5.5 は 2016 年からパッチされていません。6(PHPバージョンの確認方法については後述)、すぐにPHPバージョンを更新してください。
A Beacon of Hope
Joost de Valk氏は、アクティブインストール数300万以上のWordPress SEOプラグイン、「Yoast SEO」の創設者で、これについて何か行動を起こすことにしたのです。 元記事から引用すると、
Yoast SEO 4.5 では、WordPress ダッシュボードで PHP 5.2 で動作するサイトの管理者に通知を表示するようにします。 この通知は、大きく、醜く、そして却下できないものになります。 この通知では、管理者がサイトの PHP バージョンをアップグレードすべき理由を説明します。
WordPress と古いバージョンの PHP
この時点で、WordPress が古いバージョンの PHP を引き続きサポートしていくことを指摘することが重要です。 これは、安心して座っていられるという意味ではありません。 5.6 にアップグレードすることが最善の利益です – PHP 7 でない場合は。
PHP 5.6 を使用している場合、まもなくいくつかのことが起こります。
- 公式の PHP サポート タイムラインによると、PHP 5.6 は 2017 年 1 月 17 日まで公式サポートを受けることになっていました。 それが終了しました。
- より良いニュースとしては、PHP 5.6 は 2018 年 12 月 31 日までセキュリティ サポートを受けることができます。
- もちろん、投資ゼロで得られるパフォーマンス強化のすべてを見逃すことになります。
Switching to PHP 7 – Is It Worth It?
ここまでで PHP 7 が持つさまざまな利点がしっかりわかったところで、肝心の質問を取り上げましょう。 PHP 7 に切り替えるべきか?
どのような決定にも、論理に基づいた方法が必要です。
PHP 7 に切り替える利点は何ですか
私たちは、Web 上のベンチマークによって裏付けられた 5 つの点を取り上げました。 5869>
Are your WordPress Theme and Plugin(s) Compatible with PHP 7?
WordPress が PHP 7 と互換性があるからといって、すべてのテーマとプラグインが互換性を持つとは限りません。 PHP 7 で非推奨の機能を持つカスタム ビルドのテーマやプラグインを使用することができます。 また、WordPressのリポジトリにある、しばらく更新されていないプラグインを使用している場合もあります。
How Can You Check If Your WordPress Site Is Ready for PHP 7?
幸運にも、WP Engine の寛大な開発者が、まさにこの問題を解決する素晴らしいプラグインを作成しました。 WordPress のコードベースとアクティブなテーマ プラグインをスキャンして、既知の互換性の問題を探すプラグインです。
Supported PHP versions of the PHP Compatibility Checker Plugin
5.5 ~ 5.0 の範囲で、個別の PHP バージョンについて互換性問題をチェックすることができます。
(クリックで拡大)
互換性の問題は、(見つかった場合)エラーと警告に分類されます。 プラグインは、問題のあるコードのファイルと行番号を、そのコードが選択したバージョンの PHP と互換性がない理由についての情報とともに一覧表示します。
しかしながら、いくつかの制限があります:
- 既存のテーマとプラグインを実行しないので、プラグインは実行時の互換性の問題を検出できません。
- 後方互換のために使用されるかもしれない未使用のコード パスをプラグインが検出できないため、時折、偽陽性が報告されます。
PHP Compatibility Checker によってサポートされているプラグインのサンプル リスト。
全体として、あなたの WordPress スタックがアップグレードに対応しているかどうかを教えてくれる、とてもすてきなプラグインです!
PHP 7 に変更しないことの危険性は?
以下の 3 点では、推奨される PHP 7 にアップグレードしないことのデメリットが説明されています。 また、必要な最小バージョンである PHP 5.6 にアップグレードしない場合に考えられる危険性についても強調しています。
4.1 パフォーマンスの低下。 まず第一に、一銭も投資せずに、少なくとも 2 倍のパフォーマンスの向上を逃すことになります。 そして、何を想像しますか? PHP 5.2 を使用している場合、PHP 7 より 400% 遅いと報告されています!
4.2 セキュリティの問題。 PHP 5.x には多数の脆弱性があり、新しいバージョンできちんとパッチが適用されました。 実際、2016年はPHPのセキュリティ脆弱性の記録的な年であり、サービス拒否(DoS)からメモリ破壊、悪意のあるコードの実行など、100以上の問題が報告されています。
状況がどれほど悪いかを示すために、PHP 5.4は2015年からパッチが当たっておらず、もはやサポート外になっています。 それなのに、WordPress ユーザーの 21% がまだ PHP 5.4 を使用しているのです! もしあなたがそのグループの一員なら、今日中に 5.6 にアップデートしてください。
4.3 壊れたプラグイン。 サポートされていない古いバージョンの PHP を使用すると、プラグインの競合が発生します。 最も顕著なエラーの 1 つは、以下に見られるような ‘unexpected T_Function’ です。
Screenshot of support thread of the Content Locker plugin
上のスクリーンショットは Content Locker プラグインに対するサポート クエリです。 作者は、プラグインが動作するために必要な PHP の最小バージョンが 5.4 であることを明確に述べています。
Success Stories
世界中のさまざまな組織が、アップグレードによって恩恵を受けているのを見ると、いつも励まされます。
5.1) Badoo で節約したお金
最初の例は、出会い系アプリ Badoo で、PHP 7 へのアップグレードにより 100 万ドル以上を節約することに成功しました。 どのように? 簡単です。 PHP 7 は、同じタスクを達成するために必要な計算パワーの量を減らしました。 その結果、同じ仕事をするのに必要なサーバーの数が減り、最終的に約300台のサーバーが解放されました!
5.2) Clinton Electronicsのパフォーマンスの大幅向上
2番目の成功例は、WP EngineのクライアントであるClinton Electronicsによるものです。 簡単に言うと、彼らは高速なロード時間を持つダイナミックなeコマースストアを求めていました。 選択されたスタックは、WordPress と WooCommerce でした。 彼らが依頼した代理店は、WordPress のマネージド ホスティング プロバイダーとして WP Engine を選択し、PHP 7 を推奨しました。 このアップグレードにより、最終的に Web サイトのロード時間が 60% も短縮されました!
WordPress を PHP 7 に切り替える方法
まず最初に、PHP Compatibility Checker プラグインで現在の WordPress スタックが PHP 7 と互換であるか確認します。 プラグインが青信号を出したら、アップグレードを進めます。
- Bluehostなどの共有WordPressホスティングを使用している場合、4つの簡単な手順でPHPのバージョンを更新することができます。 ほぼすべての共有WordPressホスティングプロバイダーには、PHPのバージョンを変更できるcPanelまたはカスタムアクセスパネルが付属しています。
- WP EngineなどのマネージドWordPressホスティングプロバイダーを使用している場合、PHP 7への切り替えは簡単です。
WPEngine PHP FAQ page Retrieved: 26 Apr, 2017
WP Engine PHP FAQ page, retrieved: 26 April 2017
WPエンジンユーザーにとって良いニュースは、同社のFAQページによると許容最小バージョンのPHPが 5.6 であるということである。
- 革新的なWordPressテクノロジー。
- 1日あたり数億のリクエストを処理できる高速なサーバー。
- 高度な DDoS 保護を備えたハードコア セキュリティ
- 優れたサポート
National Geographic や AMD などのトップ ブランドを獲得しています。 WP Engine の最も気に入っている点は、WordCamp のスポンサー、イベントの開催、PHP Compatibility Checker などの素晴らしい無料プラグインの構築など、コミュニティに還元する文化があることです。
まとめ
これまでに学んだことを簡単にまとめます。
- PHP はインターネットの 82% を動かし、Facebook や WordPress などのサイトを動かしています。
- PHP の推奨最低バージョン 5.6 – これ以下は絶対にダメ!
- PHP 7 は、パフォーマンス、セキュリティ、および機能の面で大幅に改善されており、ハードウェアの追加なしに WordPress のパフォーマンスを 2 倍に向上させることができます。
- Bluehost などの共有ホストは PHP 7 をサポートしていますが、手動で有効にする必要があります。
- WP Engine などの WordPress 管理ホストは PHP 7 と強固な互換性を持っています。 WordPress と一般的なプラグインのみを使用している場合、PHP 7 にアップグレードすることで多くのことを得ることができます。 しかし、あなたがカスタムまたは頻繁に更新されるプラグインの多くを使用している場合、それはおそらくアップグレードする前に、さらに数ヶ月間保持することをお勧めします. しかし、PHP 5.6 とそれ以下のものを使用することは必須です!
WordPress ですでに PHP7 を使用していますか? 5869>
By Sourav Kundu
A technology enthusiast in general, Sourav enjoying learning and writing about WordPress, and is interested in marketing, psychology and all things digital.Sourav は、テクノロジー愛好家です。 彼はTwitterで連絡することができます..