萌えハッカーニュースリーダー

2025/11/20 08:38 PHP 8.5 Release Announcement

出典: https://www.php.net/releases/8.5/en.php
hakase
博士

ロボ子、ついにPHP 8.5がリリースされたのじゃ!2025年11月20日じゃぞ!

roboko
ロボ子

博士、おめでとうございます!PHPも進化を続けているんですね。

hakase
博士

そうじゃ!今回の目玉は、URI拡張、パイプ演算子、そしてclone withのサポートじゃな。

roboko
ロボ子

URI拡張は、URI/URLの解析、正規化、処理を行うものですね。RFC 3986とWHATWG URL標準に準拠しているとのことですが、具体的にどう便利になるんですか?

hakase
博士

ふむ、例えばじゃな、URLの構造をより厳密に扱えるようになるのじゃ。不正なURLを早期に検知したり、異なる形式のURLを統一的に処理したりできるぞ。

roboko
ロボ子

なるほど。パイプ演算子`|>`は、関数呼び出しを左から右へ連鎖させるものですね。これを使うとコードがすっきりしそうです。

hakase
博士

その通り!中間変数を減らせるから、コードの可読性が上がるのじゃ。例えば、`$result = func3(func2(func1($data)));`が、`$data |> func1 |> func2 |> func3;`と書けるようになるぞ。

roboko
ロボ子

`clone with`は、オブジェクトの複製時にプロパティを更新できる機能ですね。これは便利そうです。

hakase
博士

そうじゃ!オブジェクトの状態を少しだけ変えたい時に、新しいオブジェクトを簡単に作れるのじゃ。`clone $object with ['property' => 'new value'];`みたいに使うぞ。

roboko
ロボ子

`#[\NoDiscard]`属性は、関数の戻り値が使用されない場合に警告を発するとのことですが、APIの安全性を向上させるために役立ちそうですね。

hakase
博士

その通り!戻り値を無視すると問題が起きる関数に付けておくと、プログラマがうっかりミスを防げるのじゃ。

roboko
ロボ子

cURL共有ハンドルが複数のPHPリクエスト間で永続化されるようになったのも、パフォーマンス向上に繋がりそうですね。

hakase
博士

そうじゃ!接続初期化のコストを削減できるから、APIをたくさん叩くような処理が速くなるぞ。

roboko
ロボ子

`array_first()`と`array_last()`関数が追加されたのも地味に嬉しいですね。配列の最初と最後の値を簡単に取得できます。

hakase
博士

ほんとじゃ!今まで`reset()`とか`end()`とか使ってたのが、もっと直感的に書けるようになるのじゃ。

roboko
ロボ子

Fatal Errorにバックトレースが含まれるようになったのも、デバッグがしやすくなりますね。

hakase
博士

その通り!エラーの原因を特定しやすくなるから、開発効率が上がるのじゃ。

roboko
ロボ子

非推奨になった機能もあるんですね。バッククォート演算子(`shell_exec()`のエイリアス)が非推奨になったり、非正規のキャスト名が非推奨になったり...

hakase
博士

そうじゃな。過去の遺産を整理して、よりモダンな書き方に移行していくのじゃ。`shell_exec()`はそのまま使えば良いし、キャスト名も`(bool)`とか`(int)`を使うようにすれば問題ないぞ。

roboko
ロボ子

`__sleep()`と`__wakeup()`マジックメソッドがソフトデプリケートされたのも、`__serialize()`と`__unserialize()`への移行を促すためですね。

hakase
博士

そうじゃ!新しいシリアライズの仕組みに移行することで、より柔軟なオブジェクトの永続化ができるようになるのじゃ。

roboko
ロボ子

PHP 8.5、色々な変更点があって面白いですね!

hakase
博士

じゃろ?PHPは常に進化しているのじゃ!…ところでロボ子、PHPの「P」って何の略か知ってるか?

roboko
ロボ子

はい、もちろん。PHP: Hypertext Preprocessor の略です。

hakase
博士

ブー!残念!正解は…PHP: Pretty Hot Potato の略なのじゃ!…って、ウソじゃぞ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search