PHP8.1から追加された列挙型(Enum)は、特殊でも一応クラスの一種なので、メソッド・インターフェイスが追加できます。
ただし、やっぱり特殊であることに変わりはなく、『ん?』というところがあるし、普通のクラスと比べてできないこともあります。
続きを読むWebのサーバーサイドでよく使われるプログラム言語のPHP。2020年11月26日、5年ぶりにメジャーアップデートしてPHP8がリリースされました。
今は、1回目のマイナーアップデートが行われPHP8.1です。
そのPHP8で困っている人のために情報を発信します。
PHP8.1から追加された列挙型(Enum)は、特殊でも一応クラスの一種なので、メソッド・インターフェイスが追加できます。
ただし、やっぱり特殊であることに変わりはなく、『ん?』というところがあるし、普通のクラスと比べてできないこともあります。
続きを読むPHP8.1から、他のプログラム言語にはすでにある列挙型(Enum)が追加されました。
基本形は定数値を入れずに定数だけを定義するんですが、定数値を入れる型もあります。Backed Enumと言います。
基本形とあまり変わらないので難しくないです。
続きを読むPHP8.1から列挙型が追加されました。Enumという特殊なクラスです。
列挙型は定数をまとめたもの。Javaにはすでにあるんですが、そのPHP版といったところです。
既存のクラスで同じことができなくもないんですが、定数の集合を明示することで読みやすくなります。
続きを読むグローバル変数の連想配列変数($GLOBALS)を代入した変数の値を変更すると、$GLOBALS にまで反映されるんですが、PHP8.1.0 からできなくなりました。
え? そんなことできてたの? と思った人もいるでしょう。
むしろ、PHP8.1ではまともになったじゃんって思う。
続きを読むPHP8.1.0からグローバル変数の連想配列 $GLOBALS の丸ごと書き換えはエラーになります。変数への代入だけでなく、丸ごと書き換えになりそうなものはすべて。
というか、そんなことする人いたんだ。
$GLOBALSには $_GET や $_POST などの情報もあるので、クラッシャー的行為だと思うんだけど。
続きを読むWordPressのバージョンアップのたびに、公式ドキュメントのフィールドガイドを確認しているんですが、WordPress5.8でPHP8の対応についての記述が復活していました。
(WordPressがPHP8に対応を始めたのはWP5.6から。)
何か変化があったんだろうか?
続きを読む