PHPカンファレンス2017@東京_メモ①PHPの今とこれから


PHPの今とこれから

PHPのリリースサイクルとか

 リリースサイクル:1年
 ライフサイクル:3年(バグ修正:2年/セキュリティ修正:1年)

7.xの特徴

 7.0
  大幅高速化(データ構造の見直し->最新CPUへの対応)
  戻り値型宣言
  スカラー型宣言
 7.1
  Nullable
  複数例外キャッチ
 7.2 (11月リリース)
  暗号フレームワーク
  高速化
 

7.2改善ポイント

 7.1から10%高速化
 関数の引数型宣言や戻り値でobject型を使用可能
  従来:Typehintingではクラス名を指定
  制約:同一クラスまたは継承されたクラスのみ確認可能
  →汎用クラスを表すobject型を型引数または戻り値に指定
  public function method() : object <- 戻り値の型指定
 ハッシュ生成
  5.5でパスワードハッシュ用APIを導入
  password_hash()
   Argon2をパスワードハッシュで使用可能
   柔軟な設定が可能:メモリコスト、時間コスト、並列度を調整
 パスワード検証
  タイミング攻撃に対する対応
  password_verify()
 セキュリティフレームワーク
  Libsodium標準サポート化
   OpenSSLのみ対応だとRSAやAESの間違った使い方を誘発、認証付き暗号を未サポート
    認証付き暗号:暗号 + MACで構成/秘匿性 + 完全性・認証性   
 サイドチャネル攻撃に対応可能、高速な暗号実装
 

7.2廃止予定機能

 Mcrypt:PECLに移動
 __autoload等
 extentionロードの環境依存廃止  

フレームワーク

 Laravelの人気が高い

HHVM/Hackの進化

 Facebookが開発するPHP/Hackの実行環境
 PHP7の完全互換は目指さない
 Hack用ツール/ライブラリ提供
 Hack言語の改良:デストラクタ・リファレンスの廃止
  PHPとは別の方向に進む可能性/つかず離れず
 (ロードマップが公開されている) 

PHPのこれから

 7.3開発
 JIT for PHP;OpCacheを拡張、Zendが次期