Zusammenführen von zwei arrays in PHP

Ich versuche, erstellen Sie ein neues array aus zwei aktuellen arrays. Versucht array_merge, aber es wird mir nicht, was ich will. $array1 ist eine Liste von keys, die ich übergeben an eine Funktion. $array2 hält die Ergebnisse aus dieser Funktion, aber nicht enthalten keine nicht verfügbar resuls für Schlüssel. Also, ich möchte sicherstellen, dass alle angeforderten Schlüssel heraus kommt mit 'null':ed-Werte, als nach der gezeigten $result array.

Geht es ein wenig so etwas wie dieses:

$array1 = array('item1', 'item2', 'item3', 'item4');

$array2 = array(
    'item1' => 'value1',
    'item2' => 'value2',
    'item3' => 'value3'
);

Hier ist das Ergebnis möchte ich:

$result = array(
    'item1' => 'value1',
    'item2' => 'value2',
    'item3' => 'value3',
    'item4' => ''  
);

Kann es auf diese Weise getan, aber ich glaube nicht, dass es eine gute Lösung - ich weiß wirklich nicht, wie zu nehmen Sie den einfachen Weg und unterdrücken, PHP Fehler durch das hinzufügen von @:s in den code. Dieses Beispiel wäre natürlich werfen Fehler, da 'item4' ist nicht in $array2 am Beispiel.

foreach ($keys as $k => $v){
    @$array[$v] = $items[$v]; 
}

So, was ist am schnellsten (performance-wise) Weg, um zu erreichen das gleiche Ergebnis?

InformationsquelleAutor Industrial | 2010-05-22
Schreibe einen Kommentar