PDO: تجميع المصفوفات الترابطية حسب قيم الأعمدة
يمكن أن يكون تجميع البيانات حسب قيم أعمدة محددة مفيدًا لتنظيم مجموعات البيانات ومعالجتها. يستكشف هذا السؤال طريقة لتحقيق ذلك باستخدام طريقة fetchAll الخاصة بشركة تنمية نفط عمان.
يوضح المثال المقدم مجموعة بيانات للموظفين مع أعمدة مثل الاسم والعمر والجنس والمنصب. الهدف هو الحصول على مصفوفة ترابطية مجمعة حسب عمود الاسم، مما يؤدي إلى بنية مصفوفة مثل:
[ 'Antony' => ['age' => 34, 'sex' => 'M', 'position' => 'programmer'], 'Sally' => ['age' => 30, 'sex' => 'F', 'position' => 'manager'], 'Matthew' => ['age' => 28, 'sex' => 'M', 'position' => 'designer'], ]
يقدم النهج الأولي باستخدام PDO::FETCH_GROUP|PDO::FETCH_ASSOC مستويات تداخل غير مرغوب فيها. لحل هذه المشكلة، يقترح السؤال استخدام وظيفة رد اتصال مع PDO::FETCH_GROUP|PDO::FETCH_ASSOC|PDO::FETCH_FUNC. ومع ذلك، فإنه يواجه مشكلات مع وظيفة رد الاتصال التي تتلقى عناصر فردية بدلاً من المصفوفات.
الحل لهذه المشكلة هو استخدام PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE. يعين هذا الأسلوب العمود الأول كمفتاح المصفوفة ويعين الأعمدة المتبقية كقيم، مما يؤدي إلى الحصول على المصفوفة الترابطية المجمعة المطلوبة دون تداخل غير ضروري أو معالجة المصفوفة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3