PHP8.0を利用してみてわかっていること

  • 外部拡張のCurlハンドルがリソース型ではなくなり、オブジェクト型に
    #if (is_resource($handle))
    if ($handle instanceof CurlHandle)
    
  • stream_socket_client や stream_socket_server を同一のスクリプトで複数扱うとjit関連のエラーで不正終了する(Linux,Windows両環境共)ので、php.iniで以下の設定を追加し、jitコンパイルの範囲から除外する。 php.iniのopcacheのディレクティブ項目の設定
    opcache.blacklist_filename="d:\etc_path_to\PHP\80-x64.blacklist"
    
    80-x64.blacklistの内容 (ワイルドカード可能)
    e:\my_library\class\php\net\*.php