تحويل السلسلة إلى مصفوفة ترابطية باستخدام وظائف المصفوفة
في PHP، غالبًا ما تنشأ الحاجة إلى تحويل سلسلة تحتوي على أزواج قيمة المفتاح إلى سلسلة مجموعة النقابي. خذ بعين الاعتبار سلسلة مثل "1-350,9-390.99"، حيث يتم فصل كل عنصر بواصلة وفاصلة. الهدف هو إنشاء مصفوفة ترابطية حيث يصبح الرقم الأول في كل عنصر هو المفتاح، ويصبح الرقم الثاني هو القيمة.
يمكن تحقيق هذا التحويل بكفاءة باستخدام وظائف المصفوفة المضمنة في PHP. تتضمن الخطوة الأولى تقسيم السلسلة إلى مصفوفات فردية باستخدام preg_split("/[-,]/", $input)، الذي يفصل بين الأرقام بالواصلات والفواصل. والنتيجة هي قائمة من المصفوفات الفرعية، تحتوي كل منها على مفتاح وقيمة.
بعد ذلك، نستخدم array_chunk لتجميع هذه المصفوفات الفرعية في قطعتين، مما يضمن أن يحمل عنصر واحد المفتاح والآخر يحتفظ به. القيمة. أخيرًا، يتم استخدام array_column لاستخراج المفاتيح والقيم في صفائف منفصلة. يؤدي استخدام array_combine في هذه المصفوفات إلى الحصول على المصفوفة الترابطية المطلوبة.
Code Snippet:
$input = '1-350,9-390.99';
$chunks = array_chunk(preg_split('/[-,]/', $input), 2);
$result = array_combine(array_column($chunks, 0), array_column($chunks, 1));
الإخراج:
صفيف ( [1] => 350 [9] => 390.99 )Array ( [1] => 350 [9] => 390.99 )تقوم هذه الطريقة بتحويل السلسلة بشكل فعال إلى مصفوفة ترابطية دون اللجوء إلى الحلقات، مما يعرض قوة وظائف المصفوفة في PHP.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3