In PHP, wie finde ich den Wert mit einem bestimmten Schlüssel zugeordnet
-
06-07-2019 - |
Frage
Ich habe zwei Arrays. Eine enthält id=>count
und die andere enthält id=>name
. Ich versuche, ein einzelnes Array zu erzeugen, die name=>count
ist. Irgendwelche Vorschläge auf eine einfache Art und Weise, dies zu tun?
Ich habe an den Array-Funktionen in PHP Manual und hat nichts gesehen, das stand als zu tun, was ich will, so vermute ich, ich werde eine Kombination von Funktionen benötigen, aber ich habe Probleme kommen mit etwas, das nicht gefaltet ist.
Lösung
So etwas wie:
foreach($countA as $id => $count)
{
$newArray[$nameA[$id]] = $count;
}
Dies ist davon ausgehen, dass die Schlüssel in Übereinstimmung zwischen den beiden Feldern sind, da Ihre Anforderungen sonst nicht eindeutig sind.
Andere Tipps
Verwenden Sie array_combine ...
$countArray = array(0 => 1, 1 => 5);
$namesArray = array(0 => "Bob", 1 => "Alice");
$assocArray = array_combine($namesArray, $countArray);
Edit: Hier ist eine überarbeitete Lösung für die neuen Anforderungen in Kommentar # 2 ausgedrückt
$assocArray = array();
foreach($namesArray as $id => $name) {
$assocArray[$name] = (array_key_exists($id, $countArray)) ? $countArray[$id] : 0;
}