سؤال
لدي هذا الصفيف هنا:
Array
(
[0] => Array
(
[presentation] => Präsentationen
)
[1] => Array
(
[news] => Aktuelle Meldungen
[devplan] => Förderprogramme
[salesdoc] => Vertriebsunterlagen
)
[2] => Array
(
[user/settings] => Mein Account
)
[3] => Array
(
)
[4] => Array
(
[orders] => Projekte
)
)
أرغب في إلغاء الراب الأول للعمق الأول للمصفوفة للحصول على هذا:
Array
(
[presentation] => Präsentationen
[news] => Aktuelle Meldungen
[devplan] => Förderprogramme
[salesdoc] => Vertriebsunterlagen
[user/settings] => Mein Account
[orders] => Projekte
)
المحلول
مع PHP 5.3.0+:
array_reduce($array, 'array_merge', array());
نصائح أخرى
أعتقد أن أبسط طريقة هي استخدام أ foreach
عقدة:
$resultArray = array();
foreach ($myArray as $array)
foreach ($array as $key => $element)
$resultArray[$key] = $element;
محاولة
array_merge($array[0], $array[1], $array[2], $array[3], $array[4]);
أو
$new = $array[0] + $array[1] + $array[2] + $array[3] + $array[4];
هذه أيضًا بطانة جميلة
$array = new RecursiveArrayIterator($yourArray);
مع PHP 5.6.0+:
$new = array_merge(...$array);
(نسخة أكثر عمومية من نهج Gordons.)
لا تنتمي إلى StackOverflow