ツイート
シェア
LINEで送る
B! はてぶでブックマーク
Pocketでブックマーク
RSSフィード

中級者 - PHP8.0の技術情報

Webのサーバーサイドでよく使われるプログラム言語のPHP。2020年11月26日、5年ぶりにメジャーアップデートしてPHP8がリリースされました。

最初のバージョンがPHP8.0です。7系から8系の移行もあって変更点も多い。

そのPHP8.0について情報を発信します。

自分で情報を探しながらやっても、なかなかスムーズに答えにたどりつかない人向けです。

経験が足りないだけで、遅かったり、失敗しても自信をなくさなくていいです。いまは大きくなるために、技術を知って試す時期なので。

むしろたくさん悩んで、フリーズして、失敗してください。気がついたら最適な答えを出す力が自然と身についているでしょう。

PHP8, 特定の文字列で始まる(終わる)文字列か?を判定する関数を2つ追加。正規表現はいらない。

php

PHP8.0で、特定の文字列から始まる文字列か? 特定の文字列で終わる文字列か?を判定する関数が追加されました。

str_starts_with() と str_ends_with() 。

これまでだったら正規表現を使って判定するところですが、この2パターンの文字列チェックは正規表現なしでできるようになりました。

続きを読む

PHP8, str_contains, 部分文字列の存在確認関数の追加。strpos()と激似。

php

PHP8.0で文字列の中から部分文字列の存在をチェックする関数、str_contains() が追加されました。

『いや、そんな関数すでにあるでしょ?』と思った人も多いでしょう。

そのとおりで strpos() でまったく同じ処理ができます。しかも、関数名だけがちがうだけと言っていいくらいプログラムコードが似ている。

続きを読む

PHP8, ::classがクラスオブジェクトでも使える。get_class() と同じ。

php

::class は、'::' が付いても分かるように静的クラス、newでインスタンスを作成しないクラスの専売特許でした。

それが、バージョンアップしたPHP8からクラスオブジェクトでも使えるようになりました。

get_class()と同じで、ただクラス名の文字列を返すだけのなんの見栄えもないですが。

続きを読む

PHP8, Nullsafe, オブジェクトのnullチェックを省略するプロパティ・メソッド参照

php

PHPはメジャーアップデートで8が登場しました。そこで追加されたのがNullsafe演算子(?->)。

『?』とクラスオブジェエクトのメソッドやプロパティを参照する『->』を足したもの。

Null合体演算子を使いながらメソッドやプロパティを見る使ってるイメージだと分かりやすい。

続きを読む

PHP8, match式の追加。switchとちがって変数に代入可。

php

メジャーアップデートされたPHP8.0では、新しい処理分岐の式、matchが追加されました。

もともとswitch文がありますが、ちがいは結果を返すこと。戻り値として使えるし、そうなら当然、変数に結果を代入することもできます。

switchは『文』にたいしてmatchは『式』だからできること。

続きを読む