非推奨になっていたcreate_function()がPHP8で廃止されました。無名関数を知っている人にはどうでもいいことですが、ソースコードに残っていると致命的なエラーになって動きません。
何を今さらな情報ですが、もしまだ使っているようなら辞めましょうという話です。
続きを読むWebのサーバーサイドでよく使われるプログラム言語のPHP。2020年11月26日、5年ぶりにメジャーアップデートしてPHP8がリリースされました。
最初のバージョンがPHP8.0です。7系から8系の移行もあって変更点も多い。
そのPHP8.0について情報を発信します。
自分で情報を探しながらやっても、なかなかスムーズに答えにたどりつかない人向けです。
経験が足りないだけで、遅かったり、失敗しても自信をなくさなくていいです。いまは大きくなるために、技術を知って試す時期なので。
むしろたくさん悩んで、フリーズして、失敗してください。気がついたら最適な答えを出す力が自然と身についているでしょう。
非推奨になっていたcreate_function()がPHP8で廃止されました。無名関数を知っている人にはどうでもいいことですが、ソースコードに残っていると致命的なエラーになって動きません。
何を今さらな情報ですが、もしまだ使っているようなら辞めましょうという話です。
続きを読むPHP8では、ログ出力を抑制するエラー制御演算子で、最高レベルのエラーは抑制されません。@をつけても出力されます。
これまで致命的なエラーのログを出力させなかったところからするといい修正。
それでも個人的にはこの機能は使うべきでないと思っています。
続きを読むPHP8ではアトリビュートというものが追加されました。一言で言えばアノテーション。プログラムにメタ情報を追加するものです。
一般的には、テスト用やプログラムのドキュメント作成に使うものなんですが、PHPの公式ドキュメントを見ると、プログラミングでも使えるっぽい言い方をしています。
続きを読むPHPはメジャーアップデートすると定数や関数が削除されることがあります。将来、削除される予定のものが非推奨になることも。
非推奨は放置しても処理は動きますが、削除される前の猶予期間みたいなものなので、早めに使うのをやめましょう。
PHPのログに非推奨の警告メッセージが出るので分かりやすいです。
続きを読むPHP8では、それまで警告で済んでいたものがエラーになるものが多くあります。
(エラー例外をスローする。)
個々の変更点では説明されてたんですが、まとまったものがありませんでした。やっと見つけたので、エラー、警告、通知の変更点のレジュメをご紹介します。
続きを読むPHP8では、数値と文字列の非厳密な比較の結果が変わります。
非厳密とは、データの型を合わせる必要がないゆるい比較で、内部で型を強制変換して比較してくれる機能のこと。
PHP8はデータの厳密化がポイントなので比較にも影響します。個人的には型ちがいの比較はおススメしません。
続きを読む