件名の通り。備忘録も兼ねている。
in_array(strtolower($needle), array_map('strtolower', $haystack));
$needleで、$haystackを検索する。
array_mapにより、haystackの中身を全て小文字に変換し、strtolowerで検索する文字列も小文字にする。
このため、大文字小文字を区別しない検索ができる。
件名の通り。備忘録も兼ねている。
in_array(strtolower($needle), array_map('strtolower', $haystack));
$needleで、$haystackを検索する。
array_mapにより、haystackの中身を全て小文字に変換し、strtolowerで検索する文字列も小文字にする。
このため、大文字小文字を区別しない検索ができる。
PHP7から追加された機能について検証してみました。
以下では4項目のみ取り上げますが、もっと盛りだくさんの機能追加がされています。
1. "??"(null比較演算子)
与えられた左辺がnullの場合、右辺で定義した値を返す
たとえば、下記のような書き方をします。
$arr1['abc'] = 'def'; return $arr1['abc'] ?? false; // ptn1: $arr1['abc']は定義されているので、'def'が返る return $arr2['abc'] ?? false; // ptn2: $arr2['abc']は定義されていないため、falseが返る
ptn2の場合は、isnullやissetを利用して通常確認するため
isnull、isset地獄から抜け出せる可能性大ですね。
2. "<=>"(組み合わせ比較演算子)
左辺が大きい場合に1、右辺が大きい場合に-1を返す)
例:
return 1 <=> 2 // -1 return 2 <=> 1 // 1
威力を発揮するのは、usort等でしょうか。
たとえばこんな感じの。
usort($array, function($a, $b) { return $a <=> $b; });