PHP Foundation は、その月の PHP コアの最新の進捗状況を毎月ブログに公開します。この記事では6月の進捗状況を説明します。
PHP8.2 のバージョンと機能のフリーズに関する QA
#PHP8.2 は11 月 24 日 にリリースされる予定です, PHP リリース管理者は、PHP 8.2 の Alpha 1 および Alpha 2 バージョンをリリースしました。
これらのアルファ バージョンは実稼働環境での使用には適していませんが、テスト環境およびローカル開発のバージョン ノードとして使用されます。 コンパイルされた Windows バージョンは https://windows.php.net/qa/ にあり、Docker イメージは Docker Hub にあり、ソース コードは Github の php/php-src にあります。 Homebrew では、PHP 8.2-dev パッケージで shivammathur/php から関連する手順を参照できます。7 月 19 日 は PHP 8.2 の機能凍結日であり、これ以降、PHP 8.2 は新しい機能の提案を受け取れなくなります。 PHP の新機能には 2 週間のディスカッション期間と 2 週間の投票期間があります。すべての RFC (提案) は、機能を凍結する前に投票する必要があります。
RFC アップデート
前回PHP8.2 で行われる変更点 (パフォーマンスの向上、新機能)! は承認されたいくつかの新機能を導入しました。現在、いくつかの新機能が投票され、いくつかは進行中です。
実装: false と null を独立した型として許可
前の記事で述べたように、一部の開発者はこれについて楽観的ではありません。 false を独立した型として考えることは役に立ちません。これまでは、false は他の型と一緒に宣言することしかできませんでした。 開発者 George Peter Banyard のインタビューを PHP ポッドキャストで読むことができます。 https://phpinternals.news/99 では、多くの従来の関数が false を返し、内部的に例外をスローしていると述べました。 false を返すと、現在の関数コードの実行が中断される可能性があります。したがって、スタンドアロンの戻り値として false を使用することも意味があります。実装: true を独立した型として許可します
前の記事の早い段階で、編集者は false を独立した型として使用できると述べました。独立型 type (および宣言) ですが、true はそれができません。この提案では、PHP の型システムをより表現力豊かにするために、独立した型として true を追加することを提案しています。合格: Random Extension 5.xx
は、PHP の乱数ジェネレータを改善するために Go Kudo によって提案された RFC の 5 番目のイテレーションであり、移動されましたいくつかの一連の変更は別の拡張機能に変更されます。合格: is_callable の非推奨通知を追加し、呼び出し可能な型を追加
PHP は将来、is_callable 関数の一部のマニフェストを非推奨にする予定ですが、PHP8 では.2 では非推奨通知のみが生成されます。その理由は、簡単に言えば、is_callable の構文を使用するとわかりにくいためです。ただし、 is_callable は is_callable('myFunction') などの判定文字列の使用を放棄するだけであり、コールバック関数を表す変数などの他の型では引き続き使用できることに注意してください。合格: 論理和正規形型
この提案では、PHP が次のような型宣言のより多くの組み合わせをサポートすることを提案しています。 ##つまり、値は null、整数、または A インターフェイス、B インターフェイス、または D インターフェイスを実装するオブジェクトの場合があります。提案の詳細は、https://wiki.php.net/rfc/dnf_types
詳細な RFC
# で確認できます。 さらに多くの提案が議論されています。簡単な紹介とリンクをここに示します。 ディスカッション: 新しい CURL RUL API (curl クラスと URL クラスの追加)
ディスカッション: const 宣言時の列挙型属性値の使用
ディスカッション: PDO プログラムの機能を備えたサブクラス(sqlite と pgsql のサポートを改善できます)
議論中: iterator_*() シリーズがすべての反復可能なオブジェクトを受け入れるようにします (現在は Traversable のみが受け入れられますが、配列は受け入れられません)
議論中: 実装中自動 列挙型で文字列可能 (ただし、オーバーライドはカスタマイズできません)
議論中: 短いクロージャ (外部変数を使用したい匿名関数は use ステートメントを使用する必要があり、短いクロージャは問題を解決できます) このような問題 ( js の arrow 関数))
言及されている記事リンク:
Windows バージョンの PHP8.2 (https://windows .php.net/qa/ )
提案に対する開発者インタビュー (false と null を別の型にするため) (https://phpinternals.news/99)
提案: true独立した型として (https://wiki.php.net/rfc/true-type)
提案: is_callable の非推奨の通知 (https://wiki.php.net/ rfc/partially-supported-callables-expand-deprecation-notices )
提案: 選言正規形型 (https://wiki.php.net/rfc/dnf_types)
提案: 新しい CURL URL API (https://wiki.php.net/rfc/curl-url-api)
提案:const 宣言enum プロパティ値の使用 (https://wiki.php.net/rfc/fetch_property_in_const_expressions)
提案: PDO の特定のサブクラス (https://wiki.php .net/) rfc/pdo_driver_specific_subclasses )
提案: イテレータの反復可能な複数項目を拡張する (https://wiki.php.net/rfc/iterator_xyz_accept_array)
提案: センタリングなしで自動 Stringable を実装する (https://wiki.php.net/rfc/auto-implement_stringable_for_string_backed_enums)
提案: 短いクロージャー (https://wiki.php) .net/rfc/auto-capture-closure )
PHP のマージ手順の詳細については、https://thephp.foundation/blog/2022/06 /30/ をご覧ください。 php-core-roundup-3/#merged-prs-and-commits
英語の元のアドレス: https://thephp.foundation/blog/2022/06/30/php-core-roundup -3/
再版アドレス: https://phpreturn.com/index/a62be479ae1e02.html
元のプラットフォーム: PHP arsenal
著作権表示: この記事 オリジナルおよび公開by phpreturn.com (PHP Weaponry 公式サイト). すべての権利は phpreturn (PHP Weaponry) に帰属します. 当サイトでは記事の転載・引用はいかなる形式でも可能ですが、出典の明記を必ずお願いします。
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHP8.2 の最新の進歩、新機能は間もなく凍結されます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。