ホームページ >バックエンド開発 >PHPチュートリアル >オペレーターはいつ PHP で配列を安全に連結できますか?
PHP での配列連結の演算子を理解する
PHP では、演算子を使用して 2 つの配列を連結できます。ただし、この演算子が予期しない動作をし、誤った結果が生じる場合があります。
次のコードを考えてみましょう:
<code class="php">$array = array('Item 1'); $array += array('Item 2'); var_dump($array);</code>
期待される出力は、「Item 1」の両方を含む配列になります。そして「項目2」。ただし、実際の出力は次のようになります。
array(1) { [0] => string(6) "Item 1" }
この矛盾は、PHP が演算子を使用するときに重複キーを持つ配列要素を折りたたむために発生します。この場合、両方の要素のキーが 0 であるため、最初の要素のみが保持されます。
この問題に対処し、配列を正しく連結するには、代わりに array_merge() 関数を使用することをお勧めします。
<code class="php">$arr1 = array('foo'); $arr2 = array('bar'); // Will contain array('foo', 'bar'); $combined = array_merge($arr1, $arr2);</code>
Array_merge() は配列構造を保持し、異なるキーを持つ要素が正しく結合されることを保証します。
配列要素が一意のキーを持つシナリオでは、演算子が適切な選択肢となります。
<code class="php">$arr1 = array('one' => 'foo'); $arr2 = array('two' => 'bar'); // Will contain array('one' => 'foo', 'two' => 'bar'); $combined = $arr1 + $arr2;</code>
以上がオペレーターはいつ PHP で配列を安全に連結できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。