PHP 7.1 対応

  • ページ: BugTrack
  • 投稿者: 名無しさん
  • 優先順位: 低
  • 状態: 完了
  • カテゴリー: その他
  • 投稿日: 2016-12-03 (土) 02:14:38
  • バージョン: 1.5.1
  • リリース予定バージョン: 1.5.1

メッセージ

PHP 7.1 が 2016-12-01 にリリースされました。
個人的にチェックした範囲では問題なく動いていますが、プラグインまでは網羅できていません。

下位互換性のない変更

  • ユーザー関数に渡す引数が少ない場合、WARNING ではなく Error 例外が発生する
  • 引数を参照渡しで受け取る関数を call_user_func() から呼び出すと例外が発生する
  • 文字列に対して空のインデックス演算子を適用するとエラーになる
    • 例: $str[] = $x;
      • これまで: $str = [$x];
      • PHP 7.1: Fatal Error
  • void / iterable がクラス名などに利用できなくなる
  • スコープを調べる関数の動的呼び出しが禁止に
  • rand() / srand() が mt_rand() / mt_srand() のエイリアスに
    • shuffle() / str_shuffle() / array_rand() などの出力が過去バージョンとは異なる
  • 数値形式文字列の変換が科学記法に対応
    • 文字列を数値にキャストしている場合は挙動が違うかも
  • 参照による代入で自動的に作られる配列の要素の並び順の変更
  • ソートアルゴリズムの改善に伴い、同値な要素の並び順が以前とは異なる可能性がある

非推奨となる機能

  • ext/mcrypt: PHP 7.2 で削除予定
  • mb_ereg_replace() と mb_eregi_replace() の /e 修飾子

その他の変更

  • $this のチェックが厳格になり、ユーザー定義変数として $this を定義したり、$this を再代入したりすることができなくなる
  • セッション ID の生成にハッシュを利用しなくなった

  • PukiWiki 1.5.1で、特に問題になる挙動は見つかっていません。branch_r1_5 のHEADも PHP7.1で動作しているため、完了とします -- umorigu 2017-11-13 (月) 02:36:13


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-11-13 (月) 22:31:54
Site admin: PukiWiki Development Team

PukiWiki 1.5.1+ © 2001-2016 PukiWiki Development Team. Powered by PHP 5.6.33-0+deb8u1. HTML convert time: 0.296 sec.

OSDN