【PHPエンジニア必見】PHP7のメリット・デメリットまとめ

Businessman Using Laptop Working Thinking Concept

そもそもPHP7って?

PHP7は現時点(2017年)における最新のPHPのバージョンとなります。PHPでは5系が10年近くに渡り使われていましたが、ようやく次のメジャーバージョンアップとして7系がリリースされました。ちなみにPHP6がスキップされていますが、これはPHP6で当初予定されていた内容がPHP5のマイナーバージョンアップによって対応されてしまったことから、6系のバージョンアップは不要という判断がされた経緯があるからです。

逆に言うとPHPは5系のマイナーバージョン間でかなり大きな変更が加えられているということもできます。たとえば5.1系と5.3系にも大きな違いがありますし、5系の最新バージョンである5.6系にも大きな変更が加わっています

その意味ではようやく5系に一区切りがつき、新しいメジャーバージョンの基でPHPの進化が開始したと言ってもよいでしょう。

ITプロパートナーズでは,週2日からこなせる仕事を紹介しております。
まずはこちらより、弊社のサービスにご登録後、お仕事の詳細をご覧ください!

PHP7のメリットは?

PHP7では言語の互換性に関して非常に保守的な部分があります。言い換えればバージョン間の互換性が非常に高いということです。これはPHP7の最大のメリットと言えるでしょう。つまり既存で動いているPHP5のシステム環境を7に上げるコストが非常に低いということになります。もちろん変更は入っているので、バージョンアップしても動作する保証はないのですが、動作テスト&部分修正で十分に対応できるレベルの互換性があります。なので既存のサイトに対してもPHP7を適用するという選択肢がとりやすくなります。

更にPHP7にバージョンアップするメリットとして処理速度の向上が挙げられます。PHPの生みの親であるRasmus Lerdorf氏によるとPHP7はPHP5系に比べておおよそ2倍のパフォーマンス向上が期待できると述べています。この効果は主に内部的なデータ構造の改善やメモリ管理手法、検索手法の向上などによるものだそうです。

PHP7のデメリットとは?

現時点ではPHP7自体に致命的な問題点というものはないと筆者は考えています。もちろんどのような言語についてもメリットデメリットはあると思うのですが、それは多分に使う人側の好みや考え方に起因することが多いものです。そもそも論ですが致命的な問題点があるような言語はリリースされません。

ただ筆者が感じている点として、PHP5.6系で非推奨とされていたものの使えていた関数が一気に廃止されてしまったことは、かなり大きなデメリットだと感じています。
PHPではバージョン間の互換性を確保する為に、古いバージョンの関数なども非推奨と言う形で動かすことが可能でした。しかしPHP7へのメジャーバージョンアップではこれらの非推奨関数が一気に廃止されたことにより、古いPHPのバージョンで作られたプログラムをPHP7で動作させるためのコストが想定外に大きくなる可能性があります。例えば筆者は昔ereg関数をよく書いていたのですがこれは非推奨関数なのでPHP7ではpreg_matchに書き換えねばなりません。

ITプロパートナーズでは,週2日からこなせる仕事を紹介しております。
まずはこちらより、弊社のサービスにご登録後、お仕事の詳細をご覧ください!

アップデートした方がいいの?

さて、PHP5系で動いているシステムをPHP7にアップデートするべきか否かについて考えてみましょう。考え方としてはシンプルに先に述べたメリットとデメリットを考慮して考えればよいのだと思います。つまり現在のPHPのバージョンが5.6なのかそれ以下なのか?非推奨関数がどの程度使われているかによって判断すべきでしょう。今のシステムがPHP5.6で非推奨関数が使われていない場合はアップデートの方向で進めるべきで、5系でも5.1だったり非推奨関数も多く使われている場合は慎重に検討する必要があるかもしれません。

ただしアップデートのしやすさとは別に、PHP5.6は2018年末にはメンテナンスが終了してしまい、その後はバグフィックスもセキュリティ対策も行われないということを考慮する必要があります。(ちなみに5.6より下のバージョンのPHPサポートは既に終了しています。)

もしビジネスユースでPHPを利用している場合、今後のセキュリティのリスクを考えるとアップデートをしないという選択肢はないのかもしれません。この辺はサイトの知名度、売り上げや利益などエンジニアリングとは別の要素、つまり経営的な判断から決められることになると思います。費用対効果を考えると場合によってはサイト閉鎖や問題の放置という選択肢も合理的なのかもしれません。

まとめ

いかがでしたでしょうか?PHP7は5系のリリースからほぼ10年ぶりのメジャーバージョンアップで、初めての対応に苦慮する方も多いかもしれません。また今回はPHPの言語レベルでのアップデートのしやすさについて評価をしましたが現実にはフレームワークの有無やその対応状況、エンジニア確保の問題などで容易にアップデートができないというケースもあります。

PHP5には10年の歴史がありますから10年前に構築されたサイトであれば資料や人も残っておらず、もはやブラックボックス化されたサイトも多々あるでしょう。その場合は無理にアップデートという選択肢を取るよりもサイトリニューアルをする方が経済的かもしれません。となると単純なPHPのアップデートの議論だけではなくサイトの将来を見据えた移行計画が提言できるエンジニアが現場では求められていると言えるでしょう。

bn04

もし、今あなたが

・フリーランスになるか悩んでる
・自分に合った案件があるのか不安
・そもそも何から始めればいいのか分からない

などお困りであれば、ぜひ弊社ITプロパートナーズのサポート内容を確認してみてください!

登録後、専属エージェントに無料相談もできますよ!

※週2日 / 30万〜のフリーランス案件を紹介中です
※ご経験やご希望によっては案件を紹介できない場合がございますのでご了承ください。


よく見られてる関連案件

b80c977483d024c14549510e194361fe 2_anken 3_anken