سؤال

أحتاج إلى إنشاء مجموعة من الصفائف.
لقد كنت استخدم 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، الخ.)؛

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top