[COLOR=crimson]
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته، وبعد؛
اليوم جايب لكم دالتين متعاكستين تماماً في العمل ..
الدالة الأولى وهي explode التي ظهرت في PHP3 وفي PHP4 منذ الإصدارة الأولى PHP4.0.0
والأخرى هي implode والتي ظهرت في نفس الإصدارات ..
وظيفة الدالة الأولى explode هي تحويل متغير إلى مصفوفة تحتوي على عدة عناصر (والعناصر تكون هي محتويات المتغير الأول)
يعني لدينا مثلاً متغير يحتوي على المعلومات التالية:
pizza1 pizza2 pizza3 pizza4
وهذا هو متغير واحد كامل
ونحن نريد أن نحصل على مصفوفة من هذا المتغير تحتوي على 4 عناصر ،، أولها pizza1 وثانيها pizza2 وثالثها pizza3 ورابعها pizza4
الآن علينا استخدام دالة explode للقيام بذلك العمل ..!!!
لنأخذ المثال التالي لذلك:
كود PHP:
<?
$s = "pizza1 pizza2 pizza3 pizza4";
$a = explode(" ",$s);
while (list($k,$v)=each($a)) {
Echo "$k - $v<BR>";
}
?>
[COLOR=crimson]
في المثال السابق قمنا بتعريف متغير باسم s$ ووضع البيانات التالية فيه:
pizza1 pizza2 pizza3 pizza4
ثم قمنا بتعريف متغير آخراً باسم a$ وقمنا بإعطائه قيمة المتغير السابق بعد تمريره للدالة explode التي تقوم بتحويل المتغير إلى مصفوفة ..
وقد مررنا للدالة explode في الباراميتر الأول القيمة التي نريد منها أن تكون فواصل بين كل عنصر وآخر .. وقد مررنا القيمة " " أي مسافة (Space) فعند كل مسافة يتم الفصل بين كل عنصر وآخر في المصفوفة..
فمثلاً pizza1 وpizza2 يفصل بينهما مسافة واحدة فيصبح pizza1 العنصر الأول في المصفوفة الجديدة وpizza2 العنصر الثاني في نفس المصفوفة وهكذا .. وفي الباراميتر الثاني مررنا اسم المتغير وهو s$
وفي النهاية قمنا بطباعة قيم عناصر المصفوفة مع مفتاح كل منها عن طريق جملة while باستخدام دالة list التي تعلمانها هنا سابقاً..
أما دالة implode فهي عكس الدالة السابقة تماماً ، حيث يكون لدينا عدة عناصر في مصفوفة ، فنمرر للباراميتر الأول القيمة التي نريد أن نفصل بها بين كل عنصر وآخر ثم تحويل المصفوفة إلى متغير كامل ..
لنأخذ مثال على هذه الدالة:
كود PHP:
<?
$a = array("pizza1","pizza2","pizza3","pizza4");
$s = implode(" ",$a);
Echo $s;
?>
في المثال السابق قمنا بتعريف مصفوفة في المتغير a$ بالعناصر الأربعة المذكورة .. ثم قمنا بتخزين قيمة تمرير المصفوفة السابقة إلى الدالة implode بعد التحويل إلى متغير عادي يفصل بين كل عنصر وآخر من عناصر المصفوفة الأصلية مسافة واحدة ..
لاحظ أن العمليتان في الدالتين متعاكستين تماماً ..
وهناك استخدامات عديدة لهذه الدوال تستطيع أن تستخدم خيالك الواسع لذلك ..
أرجو أن تكونوا قد استفدتم من هذا الدرس ..
انتظروا الدروس القادمة إن شاء الله تعالى [S]1[/S]
تحياتي للجميع