English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تحقيق طريقة ترتيب مفتاح في مصفوفة ثنائية باستخدام PHP

هذا المثال يشرح كيفية ترتيب مفتاح معين في مصفوفة ثنائية باستخدام PHP. يُشارك معكم للاستفادة، وفقًا للتفاصيل التالية:

/**
 * ترتيب مجموعة نتائج الاستعلام
 * @access public
 * @param array $list نتائج الاستعلام
 * @param string $field اسم الحقل المراد ترتيبه
 * @param string $sortby نوع الترتيب (ترتيب إيجابي asc، ترتيب عكسي desc، ترتيب طبيعي nat)
 * @return array
 */
  function list_sort_by($list, $field, $sortby = 'asc')
  {
    if (is_array($list))
    {
      $refer = $resultSet = array();
      foreach ($list as $i => $data)
      {
        $refer[$i] = &$data[$field];
      }
      switch ($sortby)
      {
        case 'asc': // ترتيب إيجابي
          asort($refer);
          break;
        case 'desc': // ترتيب عكسي
          arsort($refer);
          break;
        case 'nat': // ترتيب طبيعي
          natcasesort($refer);
          break;
      }
      foreach ($refer as $key => $val)
      {
        $resultSet[] = &$list[$key];
      }
      return $resultSet;
    }
    return false;
  }
/**
 * مثال
 * طلب: ترتيب قيم مفتاح id في ترتيب تنازلي من مصفوفة ثنائية (هذا يعني أن القيم ذات القيم الأكبر تظهر في المقدمة)
 */
$list = array(
  0 => array(
    'id' => 1,
    'name' => 'الاول'
  ),
  1 => array(
    'id' => 3,
    'name' => 'الثالث'
  ),
  2 => array(
    'id' => 2,
    'name' => 'الثاني'
  ),
  3 => array(
    'id' => 4,
    'name' => 'الرابع'
  ),
);
//الإجابة
$new_list = list_sort_by($list, 'id', 'desc');
print_r($new_list);

نتائج التنفيذ كالتالي:

Array
(
  [0] => Array
    (
      [id] => 4
      [name] => الرابع
    )
  [1] => Array
    (
      [id] => 3
      [name] => الثالث
    )
  [2] => Array
    (
      [id] => 2
      [name] => الثاني
    )
  [3] => Array
    (
      [id] => 1
      [name] => الأول
    )
)

بالنسبة للمزيد من المعلومات المتعلقة بPHP، يمكن للقراء المهتمين التحقق من موضوعات هذا الموقع: 'دليل كامل للتعامل مع PHP Arrays'، 'دليل البدء بتعلم الجمل الأساسية لPHP'، 'تجميع استخدامهات العمليات والرموز في PHP'، 'دليل البدء بتعلم تصميم البرامج الموجهة بالأشخاص في PHP'، 'تجميع استخدامهات البرمجة الشبكية في PHP'، 'تجميع استخدامهات الأنماط النصية في PHP'، 'دليل البدء بتعلم تعامل قاعدة البيانات MySQL في PHP'، و 'تجميع استخدامهات العمليات الشائعة لقواعد البيانات في PHP'.

آمل أن يساعدكم ما ذكرته في هذا المقال في تصميم برامج PHP الخاصة بكم.

البيان: محتويات هذا المقال تم جمعها من الإنترنت، حقوق النشر مملوكة للمساهمين في الإنترنت الذين قاموا بنشرها بشكل تلقائي، هذا الموقع لا يمتلك حقوق الملكية، لم يتم تعديل المحتوى بشكل إنساني، ولا يتحمل أي مسؤولية قانونية متعلقة بذلك. إذا اكتشفتم محتوى يشتبه في انتهاك حقوق النسخ، الرجاء إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # بـ @) لتقديم الشكوى، وتقديم الدليل المتعلق، إذا تم التحقق من ذلك، سيتم حذف المحتوى المزعوم فورًا.

أنت قد تحب