صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 10 من 17
  1. تكبير الخط تصغير الخط
    بتاريخ : 29-05-2017 الساعة : 04:37 PM رقم #1

    افتراضي لدرس الثامن: المصفوفات



    شاملى مميز


    • بيانات المنصور بالله
      رقم العضوية : 197
      عضو منذ : Sep 2008
      المشاركات : 247
      بمعدل : 0.04 يوميا
      معدل تقييم المستوى : 18
      التقييم : Array


  2. الدرس الثامن: المصفوفات

    في هذا الدرس سنلقي نظرة على المصفوفات، كيف تستخدم وماذا يمكنها أن تفعل.

    فهم المصفوفات يمكن أن يكون صعباً في البداية، لكن لنجرب على أي حال ... حاولنا أن نجعلها سهلة بقدر الإمكان.

    ما هي المصفوفة؟

    المصفوفة (array) هي مجموعة من من العناصر المفهرسة حيث كل عنصر له رقم تعريف خاص به.

    يبدو هذا مثيراً للحيرة، لكنها في الواقع ليست بهذا القدر من التعقيد.

    تصور قائمة من الكلمات فصلنا بينها باستخدام فاصلة، تسمى القائمة مفصولة بفواصل، ويمكنها أن تكون بهذا الشكل:


    apples, pears, bananas, oranges, lemons


    جرب أن تتخيل تقسيم القائمة عند كل فاصلة، ثم أعطي كل قسم رقماً مميزاً كما في الصورة:


    ما تراه هو مصفوفة، يمكننا مثلاً أن نسمي المصفوفة فواكه أو "fruits"، الفكرة هي أنك تستطيع الوصول إلى المصفوفة برقم وتحصل على قيمة، كما في القائمة أدناه:

    fruits(0) = apples
    fruits(1) = pears
    fruits(2) = bananas
    fruits(3) = oranges
    fruits(4) = lemons

    هذه هي فكرة المصفوفات، الآن لنستخدمها عملياً.

    كيف تستخدم المصفوفة؟

    سنكمل مع مثال الفواكه، خطوة بعد خطوة سنجعلها تعمل كمصفوفة حقيقية، أولاً علينا أن نضع متغيرات مساوية لقائمة الفواكه:

    __________________________________________________ ___
    <?php

    $fruitlist = "apples, pears, bananas, oranges, lemons";

    ?>


    بعد ذلك نستخدم وظيفة explode لفصل القائمة عند كل فاصلة:


    <?php

    $fruitlist = "apples, pears, bananas, oranges, lemons";

    $arrFruits = explode(",", $fruitlist);

    ?>

    __________________________________________________ ___

    مرحى! المتغير "$arrFruits" أصبح مصفوفة الآن!

    لاحظ أننا استخدمنا الوظيفة explode بخاصيتين:

    الأولى هي القائمة التي يجب تقسيمها.

    والثانية هي المحدد أو الحرف الذي استخدم لتقسيم القائمة (في حالتنا استخدمنا الفاصلة): ",".
    هنا نستخدم الفاصلة كمحدد أو مقسم لكن يمكنك استخدام أي حرف أو كلمة كمقسم للمصفوفة.

    لنجرب إضافة تعليق على البرنامج ووضعه في صفحة PHP:

    __________________________________________________ ___

    <html>
    <head>
    <title>Array</title>
    </head>
    <body>

    <?php

    // Comma separated list
    $fruitlist = "apples, pears, bananas, oranges, lemons";

    // Create an array by splitting the list (with comma as delimiter)
    $arrFruits = explode(",", $fruitlist);

    // Write the values from our array
    echo "<p>The list of fruits:</p>";

    echo "<ul>";
    echo "<li>" . $arrFruits[0] . "</li>";
    echo "<li>" . $arrFruits[1] . "</li>";
    echo "<li>" . $arrFruits[2] . "</li>";
    echo "<li>" . $arrFruits[3] . "</li>";
    echo "<li>" . $arrFruits[4] . "</li>";
    echo "</ul>";

    ?>

    </body>
    </html>

    __________________________________________________ ___

    شاهد المثال
    هذا مثال بسيط جداً ويمكن أن تجد صعوبة في فهم فائدة المصفوفات في هذه المهمة بالتحديد، لكن انتظر، المصفوفات يمكن أن تكون تستخدم في أشياء كثيرة مفيدة.

    حلقة داخل مصفوفة

    في الدرس الخامس تعلمت الحلقات، الآن يمكننا استخدام حلقة للتعامل مع المصفوفة.

    عندما تعلم كم عدد العناصر التي تحويها مصفوفة فلن تكون هناك مشكلة في تحديد حلقة، ببساطة تبدأ من الصفر وتجعل الحلقة تستمر في عملها بعدد العناصر المتوفرة، في المثال مع الفواكه الحلقة ستكون بهذا الشكل:

    __________________________________________________ ___

    <html>
    <head>
    <title>Array</title>

    </head>
    <body>

    <?php

    // Comma separated list
    $fruitlist = "apples, pears, bananas, oranges, lemons";

    // Create an array by splitting the list (with a comma as delimiter)
    $arrFruits = explode (",", $fruitlist);

    echo "<p>The list of fruits:</p>";
    echo "<ul>";

    // Loop through the array $arrFruits
    for ($x=0; $x<=4; $x++) {
    echo "<li>" . $arrFruits[$x] . "</li>";
    }

    echo "</ul>";

    ?>

    </body>
    </html>

    __________________________________________________ ___

    شاهد المثال

    كما ترى، المتغير $x الذي ترتفع قيمته من 0 إلى 4 في الحلقة استخدم لجلب المصفوفة

    كيف تجد حجم المصفوفة؟

    ماذا لو أضفنا فاكهة أخرى إلى القائمة؟ ستحوي القائمة عنصراً إضافياً وسيحمل رقم التعريف 5، هل ترى مشكلة هنا؟ نحن بحاجة لتغيير الحلقة حتى تستطيع أن تكرر نفسها من 0 إلى 5 وإلا لن نستطيع التعامل مع كل العناصر في المصفوفة.

    ألن يكون من المفيد أن تكون هناك طريقة لإيجاد عدد العناصر في أي مصفوفة؟

    هذا بالضبط ما يمكن أن تفعله وظيفة foreach، الآن يمكننا أن نصمم حلقة تعمل بغض النظر عن عدد العناصر في المصفوفة:

    __________________________________________________ ___

    <?php
    foreach ($arrFruits as $x) {
    echo arrFruit[$x];
    }
    ?>
    __________________________________________________ ___


    هذه الحلقة ستعمل بغض النظر عن عدد العناصر التي تحويها المصفوفة.

    مثال آخر

    المثال أدناه يوضح كيفية استخدام المصفوفة لكتابة اسم كل شهر:
    __________________________________________________ ___


    <html>
    <head>
    <title>Array<title>

    </head>
    <body>

    // Creates array with each month.
    // Creates array with the months. Note the comma before January - because there is no month with the number 0
    $arrMonths = array(,"January","February","March","April","May", "June","July","August","September","October","Nove mber","December);

    // Call the array with the number of the month - write to the client
    echo $arrMonths[date("m")];
    ?>

    </body>
    </html>

    __________________________________________________ ___

    شاهد المثال

    لاحظ أننا استخدمنا وظيفة array بدلاً من وظيفة explode لإنشاء مصفوفة.

    حسناً، اكتفينا بالمصفوفات، في الدرس التالي ستتعلم كيف تطور وظائف خاصة بك.


    المنصور بالله غير متواجد حالياً
    رد مع اقتباس
  3. تكبير الخط تصغير الخط
    بتاريخ : 31-05-2017 الساعة : 12:23 AM رقم #2
    كاتب الموضوع : المنصور بالله


    شاملى ماسى


    الصورة الرمزية ميمونة

    • بيانات ميمونة
      رقم العضوية : 292
      عضو منذ : Apr 2009
      المشاركات : 1,363
      بمعدل : 0.25 يوميا
      معدل تقييم المستوى : 29
      التقييم : Array


  4. شكرا على المعلومات والافادة

    ميمونة غير متواجد حالياً
    رد مع اقتباس
  5. تكبير الخط تصغير الخط
    بتاريخ : 02-06-2017 الساعة : 02:02 PM رقم #3
    كاتب الموضوع : المنصور بالله


    شاملى ذهبى


    الصورة الرمزية منيرفا

    • بيانات منيرفا
      رقم العضوية : 32589
      عضو منذ : Oct 2016
      المشاركات : 741
      بمعدل : 0.27 يوميا
      معدل تقييم المستوى : 15
      التقييم : Array


  6. شكرا على الموضوع الشيق والمعلومات والافادة

    منيرفا غير متواجد حالياً
    رد مع اقتباس
  7. تكبير الخط تصغير الخط
    بتاريخ : 03-06-2017 الساعة : 11:56 AM رقم #4
    كاتب الموضوع : المنصور بالله


    شاملى ذهبى


    الصورة الرمزية نجوى كريم

    • بيانات نجوى كريم
      رقم العضوية : 6020
      عضو منذ : Jan 2012
      المشاركات : 738
      بمعدل : 0.16 يوميا
      معدل تقييم المستوى : 20
      التقييم : Array


  8. شكرا على الموضوع والافادات القيمة

    نجوى كريم غير متواجد حالياً
    رد مع اقتباس
  9. تكبير الخط تصغير الخط
    بتاريخ : 05-06-2017 الساعة : 06:45 AM رقم #5
    كاتب الموضوع : المنصور بالله


    شاملى ذهبى


    الصورة الرمزية جمارة

    • بيانات جمارة
      رقم العضوية : 195
      عضو منذ : Sep 2008
      المشاركات : 639
      بمعدل : 0.11 يوميا
      معدل تقييم المستوى : 22
      التقييم : Array


  10. شكرا على الموضوع والمعلومات المفيدة

    جمارة غير متواجد حالياً
    رد مع اقتباس
  11. تكبير الخط تصغير الخط
    بتاريخ : 10-06-2017 الساعة : 10:21 PM رقم #6
    كاتب الموضوع : المنصور بالله


    شاملى مميز


    • بيانات شوقى غريب
      رقم العضوية : 32070
      عضو منذ : Aug 2015
      المشاركات : 129
      بمعدل : 0.04 يوميا
      معدل تقييم المستوى : 10
      التقييم : Array


  12. شكرا على المعلومات والافادة

    شوقى غريب غير متواجد حالياً
    رد مع اقتباس
  13. تكبير الخط تصغير الخط
    بتاريخ : 21-06-2017 الساعة : 02:25 PM رقم #7
    كاتب الموضوع : المنصور بالله


    مراقب


    الصورة الرمزية جيهان

    • بيانات جيهان
      رقم العضوية : 39
      عضو منذ : Jul 2008
      المشاركات : 3,361
      بمعدل : 0.58 يوميا
      معدل تقييم المستوى : 49
      التقييم : Array


  14. شكرا على الموضوع والافادة والمعلومات القيمة

    جيهان غير متواجد حالياً
    رد مع اقتباس
  15. تكبير الخط تصغير الخط
    بتاريخ : 22-06-2017 الساعة : 08:33 AM رقم #8
    كاتب الموضوع : المنصور بالله


    شاملى ذهبى


    الصورة الرمزية لمياء الدميرى

    • بيانات لمياء الدميرى
      رقم العضوية : 6110
      عضو منذ : Feb 2012
      المشاركات : 705
      بمعدل : 0.16 يوميا
      معدل تقييم المستوى : 20
      التقييم : Array


  16. شكرا على المعلومات والافادة

    لمياء الدميرى غير متواجد حالياً
    رد مع اقتباس
  17. تكبير الخط تصغير الخط
    بتاريخ : 23-06-2017 الساعة : 04:16 PM رقم #9
    كاتب الموضوع : المنصور بالله


    شاملى ماسى


    الصورة الرمزية عهود المالكى

    • بيانات عهود المالكى
      رقم العضوية : 32083
      عضو منذ : Sep 2015
      المشاركات : 3,682
      بمعدل : 1.16 يوميا
      معدل تقييم المستوى : 45
      التقييم : Array


  18. شكرا على الموضوع والافادة والمعلومات القيمة

    عهود المالكى غير متواجد حالياً
    رد مع اقتباس
  19. تكبير الخط تصغير الخط
    بتاريخ : 27-06-2017 الساعة : 12:06 AM رقم #10
    كاتب الموضوع : المنصور بالله


    شاملى ماسى


    الصورة الرمزية ماهيتاب السويدى

    • بيانات ماهيتاب السويدى
      رقم العضوية : 16520
      عضو منذ : Sep 2012
      المشاركات : 1,187
      بمعدل : 0.28 يوميا
      معدل تقييم المستوى : 23
      التقييم : Array


  20. شكرا على المعلومات والافادة

    ماهيتاب السويدى غير متواجد حالياً
    رد مع اقتباس



معلومات الموضوع

الأعضاء الذين يشاهدون هذا الموضوع

الذين يشاهدون الموضوع الآن: 1 (0 من الأعضاء و 1 زائر)

     

المفضلات

المفضلات

ضوابط المشاركة

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