PHP8.0で、部分文字列を扱う関数が3つ追加されました。
str_contains(), str_starts_with(), str_ends_with() 。
この3つの関数じゃなくても比較的かんたんに同じ処理が書けるんですが、あえて新関数が用意されました。
続きを読むWebのサーバーサイドでよく使われるプログラム言語のPHP。2020年11月26日、5年ぶりにメジャーアップデートしてPHP8がリリースされました。
今は、1回目のマイナーアップデートが行われPHP8.1です。
そのPHP8について情報を発信します。
自分で情報を探しながらやっても、なかなかスムーズに答えにたどりつかない人向けです。
経験が足りないだけで、遅かったり、失敗しても自信をなくさなくていいです。いまは大きくなるために、技術を知って試す時期なので。
むしろたくさん悩んで、フリーズして、失敗してください。気がついたら最適な答えを出す力が自然と身についているでしょう。
PHP8.0で、部分文字列を扱う関数が3つ追加されました。
str_contains(), str_starts_with(), str_ends_with() 。
この3つの関数じゃなくても比較的かんたんに同じ処理が書けるんですが、あえて新関数が用意されました。
続きを読むPHP8.0で、特定の文字列から始まる文字列か? 特定の文字列で終わる文字列か?を判定する関数が追加されました。
str_starts_with() と str_ends_with() 。
これまでだったら正規表現を使って判定するところですが、この2パターンの文字列チェックは正規表現なしでできるようになりました。
続きを読むPHP8.0で文字列の中から部分文字列の存在をチェックする関数、str_contains() が追加されました。
『いや、そんな関数すでにあるでしょ?』と思った人も多いでしょう。
そのとおりで strpos() でまったく同じ処理ができます。しかも、関数名だけがちがうだけと言っていいくらいプログラムコードが似ている。
続きを読むPHP8.0で、2つのfloat型数値を使った除算(割り算)をする関数が追加されました。fdiv()。
PHP7ですでに追加されているintdiv()の小数点版です。結果も浮動小数点で返されます。
でも使い道が思いつかない。'/' の式で十分だし。
続きを読む::class は、'::' が付いても分かるように静的クラス、newでインスタンスを作成しないクラスの専売特許でした。
それが、バージョンアップしたPHP8からクラスオブジェクトでも使えるようになりました。
get_class()と同じで、ただクラス名の文字列を返すだけのなんの見栄えもないですが。
続きを読むPHPはメジャーアップデートで8が登場しました。そこで追加されたのがNullsafe演算子(?->)。
『?』とクラスオブジェエクトのメソッドやプロパティを参照する『->』を足したもの。
Null合体演算子を使いながらメソッドやプロパティを見る使ってるイメージだと分かりやすい。
続きを読む