التغطية المصورة ليوم سوالف: الجزء الأول، الجزء الأخير
الفائزون في المسابقة الأصغر لسوالف كاست

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > PHP
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد  
 
LinkBack أدوات الموضوع
عضو فعال
تاريخ التسجيل: Aug 2005-
#1 (permalink)  
شرح دالتي explode وimplode


[CENTER][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]
تحياتي للجميع
[/CENTER]






__________________
أحمد أبو النصر
Junior php Developer
+20166196074
أحمد أبو النصر غير متواجد حالياً   قديم 21-12-2005, 10:31 PM
رد مع اقتباس
عضو فعال جدا
تاريخ التسجيل: Jun 2003-
#2 (permalink)  

جزاك الله خير






__________________
إميل سعودي مجاني

htaccess بكل بساطة

الشفرة الموحدة "يونِكود"

(إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي
jadweb.com غير متواجد حالياً   قديم 22-12-2005, 11:26 PM
رد مع اقتباس
عضو نشيط جدا
تاريخ التسجيل: Nov 2005-
#3 (permalink)  

جراك الله ألف خير يا شيخ
الف شكر






__________________
Romida - Private Vision
http://www.romida-eg.com
شركة روميدا للبرمجيات وخدمات التصميم
اسامة الهادى غير متواجد حالياً   قديم 22-12-2005, 11:47 PM
رد مع اقتباس
عضو فعال
تاريخ التسجيل: Aug 2004-
#4 (permalink)  

مشكور اخى وعندى طلب ممكن موقع او كتاب يكون فى شرح اكواد Php وخصائص كل كود وامكانياته






__________________
اقم صلاتك قبل مماتك اقم صلاتك تنعم بحياتك
صلى قبل ان يصلى عليك - لا حول ولا قوه الا بالله
0124686663 & 0114686663
خدمات الشبكات اللاسلكية
hunter_rare غير متواجد حالياً   قديم 23-12-2005, 04:45 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jul 2003-
#5 (permalink)  

جزاك الله ألف خير أخوي sBforum، درس مفيد جداً بالفعل...

اقتباس:
مشكور اخى وعندى طلب ممكن موقع او كتاب يكون فى شرح اكواد Php وخصائص كل كود وامكانياته
عليك بكتيب تعلميات لغة البي اتش بي من الموقع الرسمي http://www.php.net/manual/en/ لكن باللغة الانجليزية






__________________
بوجبر

http://www.ba7reny.com
بحريني دوت كوم (موقع صديق)
M-Plus غير متواجد حالياً   قديم 23-12-2005, 05:54 PM
رد مع اقتباس
عضو فعال
تاريخ التسجيل: Aug 2005-
#6 (permalink)  

جزاكم الله خير إخوتي
أخوي hunter_rare
فعلاً M-Plus أعطاك الموقع المرجع الرئيسي
تحياتي للجميع






__________________
أحمد أبو النصر
Junior php Developer
+20166196074
أحمد أبو النصر غير متواجد حالياً   قديم 24-12-2005, 05:08 PM
رد مع اقتباس
عضو فعال جدا
تاريخ التسجيل: Feb 2004-
#7 (permalink)  

جميل اخي

وانا شرحتها تقدر تقول بشكل عامي

http://www.phpfaq.php-ar.com/index.p...592aad2c90e560

وشكرا لكم






__________________
بي اتش بي العرب : php-ar.com
دروس PHP خاص : phpfaq.php-ar.com

new site : www.naifphp.net/web
Mr.php-ar غير متواجد حالياً   قديم 24-12-2005, 07:13 PM
رد مع اقتباس
عضو فعال
تاريخ التسجيل: Aug 2005-
#8 (permalink)  

اوكي
جزاك الله خير






__________________
أحمد أبو النصر
Junior php Developer
+20166196074
أحمد أبو النصر غير متواجد حالياً   قديم 25-12-2005, 07:59 PM
رد مع اقتباس
رد


 

أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة



الساعة الآن: 03:00 PM بتوقيت المملكة العربية السعودية