🙄

今週の PHP 2024-03-02 〜 2024-03-08

2024/03/09に公開

PHP のメーリングリストから、気になった情報をピックアップします。

Internal

[pdo_dblib] Correct TDS protocol version - Externals

Sybase使ってる人が本当にいるんだ!と感動してしまった。(そこじゃない)
誤ったProtocolバージョンを使ってしまう不具合の修正に対するご意見募集スレッドです。

以前、SQLServerを使っていたときにFreetds周りとかをちょっと調べたことがあったのですが、結構ドキュメントが薄くて辛かった記憶があります。

応援あるのみ。

[Discussion] grapheme cluster for str_split function - Externals

str_split の絵文字対応に関するスレッド、すでに書記素(初めて使う単語)で分割できる grapheme_str_split を作ってみたので見てねというお話。

https://github.com/php/php-src/pull/13580/files

PHP: rfc:deprecate-get-post-sessions

PHPでは、SESSION IDを伝播する方法としてCookie以外にもGET, POSTパラメーターを使うことができるけれど、それを8.4で非推奨、9で機能削除しようという提案です。

PHP: Passing the Session ID - Manual

そんなことが機能として提供されていることを初めてしりました。Cookieが使えなかった古のモバイルブラウジングの時代に使っていた人とかいるのでしょうか......

私は大賛成ですが、コメントではこの挙動に依存していらっしゃる方もおられるようです。

RC

リリース候補版がでています

Release Managers for PHP 8.4 - Externals

PHP 8.4 のリリースマネージャー募集がでました。日本からも立候補者が出ています。さてさて、どうなるでしょう、楽しみですね。

選挙が行われる場合は 4/15 までに決定されるようです。リリースマネージャーはRC版の作成やリリースに向けてのリポジトリ作業などを行います。

PHP: rfc:mb_ucfirst

mb_ucfirst, mb_lcfirst の追加に関するRFCです。投票が完了して承認されました。

Target Versionの記述が見当たらなかったけど、多分きっと8.4で入りそう。

[[RFC Property accessor hooks, take 2 - Externals

議論が続いていますが、最近の進捗についてまとめの投稿がありました。今、現在の表記法は

class User implements Named
{
    private bool $isModified = false;
 
    public function __construct(private string $first, private string $last) {}
 
    public string $fullName {
        // Override the "read" action with arbitrary logic.
        get => $this->first . " " . $this->last;
 
        // Override the "write" action with arbitrary logic.
        set { 
            [$this->first, $this->last] = explode(' ', $value);
            $this->isModified = true;
        }
    }
}

Discussion