[1=>0]+[2=>0]
利回り[1=>0,2=>0]
。しかし、そのような構文シュガーを に使用するためのトリックはありますか[1]+[2]
? だから[1]+[2]
利回り[1,2]
?
注:私の懸念は、他の関連するPHP関数ではなく、そのような構文に関するものです。
代わりにarray_merge()を使用してください。配列で使用される奇妙な動作の多くに出くわしたので+
、二度と使用しないと約束しました。
+
既存のキーをスキップする配列ユニオン演算子です。
array_merge()
例でそれらを連結するものが必要です(数値キーを持つ配列の場合はそうします)。
+
残念ながら、オペレーターをオーバーロードして別のことを実行する方法はありません。
これは、+
ユニオン演算子であるためです。追加またはマージしません。
[1] is array(0=>1);
[2] is array(0=>2);
結合すると、キーが最初の配列に既に存在するようになりarray(0=>1)
ます0
。
それを行うための構文糖衣はありません。ただし、これを試すことができます
[1]+[1=>2]
または他の醜い表現で
[1]+[count([1])=>2]
また、構文的[1]+[2] == [1,2]
にもまったく意味がありません。それはパイソンのことです。