Ekleyebilir birleştiren ve değerlerini değiştirme

4 Cevap php

Php bana birlikte 2 diziler bağlamak ve dizi2 gelen değerleri zaten varsa dizi2 değerleri ile dizi1 değerlerini değiştirmek için izin veren bir işlevi varsa, Im merak bilmek. örnek görmek

array1('value1','value2','value3',); array2('value4','value2','value1');

array3 = functionEmerge (dizi1, dizi2);

array3 ('değer1', 'value2', 'değer3', 'value4',);

4 Cevap

Ben iki diziler birliği alıyor bahsediyoruz inanıyorum. Bu durum buysa, PHP sadece + olan sendika dizi operatörü ile birlikte geliyor. Yani:

$arr = array('value1', 'value2', 'value3') + array('value1', 'value2', 'value4');

Almalısınız:

array('value1', 'value2', 'value3', 'value4')

Bunu kullanmadan önce ben yanlış olabilir, bu nedenle bu test edebilir.

Aradığınız işlevi array_merge denir

array array_merge ( array $array1 [, array $array2 [, array $... ]] )

Birinin değerleri bir önceki sonuna eklenir, böylece bir veya daha fazla dizilerin elemanlarını birleştirir. Bu çıkan dizi döndürür.

Giriş diziler aynı dize anahtarlarını varsa, o anahtarın sonra değeri eskisinin üzerine yazılır. Ancak, diziler sayısal tuşları içeriyorsa, daha sonra değeri özgün değeri üzerine yazmaz, ancak eklenecektir.

Yalnızca bir dizi verilir ve dizi sayısal endeksli ise, anahtarlar sürekli şekilde reindexed olsun.

Bunun için tek bir operatör bulamadık, ama bu iş olacak:

$array3 = array_keys(array_flip($array1) + array_flip($array2))