■配列演算子とは
配列同士の処理に対して使用できる演算子です。
種類としては結合演算子と比較演算子があります。
■結合演算子
配列同士を結合するときに使用する演算子です。
ただ数値の加算とは違い、配列の結合は
左の配列に存在しないキーの要素を右の配列から取り出し、左の配列に追加することに注意してください。
以下の使用例で確認してみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php $a = [ "a" => "apple" , "b" => "banana" ]; $b = [ "a" => "orange" , "b" => "strawberry" , "c" => "cherry" ]; $c = $a + $b ; print_r( $c ); // Array ( [a] => apple [b] => banana [c] => cherry ) // // 左の配列$aに存在しないキーである要素cを右の配列$bから取り出し // 左の配列に追加したものが$cになっている // $c = $b + $a ; print_r( $c ); // Array ( [a] => orange [b] => strawberry [c] => cherry ) // // 左の配列$bに存在しないキーは右の配列$aにないため // 左の配列$bがそのまま$cとなる // ?> |
■比較演算子
配列同士を比較するときに使用する演算子です。
==の場合、要素数も等しく対応するキーと値も等しければtrueになります。
===の場合、==の条件に加えて、キーの順序も等しくなければtrueになりません。
左の配列に存在しないキーの要素を右の配列から取り出し、左の配列に追加することに注意してください。
以下の使用例で確認してみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 | <?php $a = [ "a" => "みかん" , "b" => "りんご" ]; $b = [ "b" => "りんご" , "a" => "みかん" ]; var_dump( $a == $b ); // // a => リンゴ, b => みかん の要素はどちらの配列も存在しているので true // var_dump( $a === $b ); // // 要素は等しいが、順番が異なるため false // ?> |