اذهب إلى المحتوى

السؤال

نشر

لديّ مصفوفة متعدّدة الأبعاد Multi Dimension على Php وأودّ ترتيبها، وكودي كالآتي:

 $stack = array(array("Price" => $op,"num" => $noi),
        array("Price" => $op1,"num" => $noi1),
        array("Price" => $op2,"num" => $noi2),
        array("Price" => $op3,"num" => $noi3));



    function cmp($a, $b)
    {
      return strcmp($a["num"], $b["num"]);
    }
      usort($stack, "cmp");

لكن أصادف مشكلة أثناء عملية الترتيب حيث لا أحصل على قيم مرتّبة بالشكل الصحيح، فهل من خطأ ما، وكيف أقوم بالعملية بشكل صحيح؟

Recommended Posts

  • 0
نشر

جرّب هذه الشيفرة والتي تقوم بترتيب المصفوفة ذات الأبعاد المتعددة:

    if ($a['num'] == $b['num']) {
        return 0;
    }
    return ($a['num'] < $b['num']) ? -1 : 1;
}

مثال آخر لطريقة الترتيب:

foreach ($mdarray as $key => $row) {
    // indexتعويض 0 بقيمة 
    $dates[$key]  = $row[0];
}

array_multisort($dates, SORT_DESC, $mdarray);

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...