PHP: إنشاء مجموعة صفيف، تجاهل صفائف فارغة
سؤال
أحتاج إلى إنشاء مجموعة من الصفائف.
لقد كنت استخدم array_map(null,$a,$b,$c)
للقيام بذلك وهذا يعمل بشكل جيد، ومع ذلك، لا يعمل إذا لم يكن أحد الصفائف المعينة غير موجودة.
للحصول على هذه المشكلة التي استخدمتها:
$myArray= array();
if (isset($a)) {
array_push($myArray,$a);
}
if (isset($b)) {
array_push($myArray,$b);
}
if (isset($c)) {
array_push($myArray,$c);
}
هل هناك طريقة أكثر أناقة / أقصر لكتابة هذا؟
لقد حاولت تطبيق بعض الوظائف عبر array_map($function,$a,$b,$c)
ولكن دون حظ.
المحلول
$myArray = array_filter(array($a, $b, $c));
نصائح أخرى
يمكنك استخدام الوظيفة التالية:
function joinArrays(){
$arrays = func_get_args();
$output = array();
foreach($arrays as $array){
if(!empty($array)) array_push($output, $array);
}
return $output;
}
دعوة مثل: النجوم ($ A، $ B، $ C، الخ.)؛
لا تنتمي إلى StackOverflow