التكرار في بي اتش بي PHP Loops
احيانا عند البرمجة نرغب بتنفيذ عدة أوامر برمجية بشكل متكرر فبدلا من تكرار كتابة هذه الأوامر اكثر من مرة نستطيع استخدام Loops او مايسمى بعبارات التكرار في PHP لتنفيذ هذه المهمة ولدينا في PHP عدة عبارات للتكرار PHP Loops يمكن تلخيصها بالتالي:
- while يتم تكرار مجموعة الأوامر البرمجية داخل هذه العبارة دام ناتج الشرط true
- do...while يتم تنفيذ مجموعة الأوامر داخل هذه العبارة لمرة واحدة، ثم بعدها يتم تكرار الأوامر دام ناتج الشرط true
- for يتم تكرار مجموعة الأوامر داخل هذه العبارة لعدد محدد من المرات
- foreach خاصة بالمصفوفات arrays حيث يتم تكرار مجموعة الأوامر البرمجية لكل عنصر في المصفوفة
عبارة while
بواسطة استخدام عبارة while نستطيع تنفيذ عدة اوامر برمجية واعادة تنفيذها عدة مرات دام ناتج الشرط true
Syntax
while (condition) {
# code...
}
مثال:
في هذا المثال قمنا بانشاء متغير باسم var وعينا القيمة 1 له ثم داخل عبارة while قمنا بوضع الشرط انه يجب ان يكون قيمة المتغير var اقل او تساوي 5 حيث انه سوف يتم تكرار تنفيذ الاوامر داخل عبارة while دام ناتج الشرط true وداخل عبارة while نقوم بزيادة قيمة المتغير var بواحد عند كل تنفيذ باستخدام معامل ++ بحيث لو تم تنفيذ while للمرة الخامسة سوف يتم زيادة قيمة المتغير بواحد لتصبح قيمة المتغير var تساوي 6 فعند التحقق من الشرط سيكون الناتج false ولن يتم تنفيذ محتوى عبارة while
<?php
$var = 1;
while($var <= 5) {
echo "The number is: $var <br>";
$var++;
}
ناتج عمل الكود
عبارة do...while
عند استخدام عبارة do...while فانه سوف يتم تنفيذ محتواها مباشرة لاول مرة ثم بعدها يتم التحقق من الشرط فان كان ناتج الشرط true سوف يتم تكرار تنفيذ الاوامر ولكن اذا كان ناتج الشرط false لن يتم تنفيذ اي اوامر برمجية داخل do...while
Syntax
do {
# code...
} while (condition);
مثال:
هذا المثال سيكون سبيه بالسابق حيث قمنا بانشاء متغير باسم var ثم عينا له القيمة 1 بعدها استخدمنا عبارة do...while لطباعة نص للمتصفح وبعدها قمنا بزيادة قيمة المتغير var بواحد باستخدام عامل ++ ثم نتحقق من الشرط بحيث يجب ان تكون قيمة المتغير اقل من او تساوي 5 ليتم تنفيذ محتوى do...while مرة أخرى
<?php
$var = 1;
do {
echo "The number is: $var <br>";
$var++;
} while ($var <= 5);
ناتج عمل الكود
ملاحظة: عند استخدام do...while فانه يتم التحقق من الشرط بعد تنفيذ محتواها اي انه سوف يتم تنفيذ الأوامر البرمجية داخل العبارة على الأقل لو مرة واحد حتى وان كان ناتج الشرط false
مثال:
نفس المثال السابق ولكن غيرنا قيمة المتغير الى 6 فعند التحقق من الشرط سيكون الناتج false ولكن لاحظ انه سوف يتم تنفيذ محتوى do...while لاول مره ثم عند التحقق من الشرط سوف تتوقف do...while من تكرار تنفيذ الاوامر لان ناتج الشرط false
<?php
$var = 6;
do {
echo "The number is: $var <br>";
$var++;
} while ($var <= 5);
ناتج عمل الكود
عبارة for
باستخدام عبارة for نستطيع تنفيذ مجموعة اوامر برمجية لعدد من المرات ونقوم بتحديد عدد مرات التكرار
Syntax
for (counter; check counter; increment counter) {
# code...
}
المدخلات parameters:
- counter: اول مدخل متغير له قيمة عددية وهو عبارة عن بداية عملية التكرار
- check counter: ثاني مدخل وهو شرط يتم التحقق من عند كل عملية تكرار اذا كان ناتج الشرط true يتم تنفيذ محتوى العبارة و ان كان الناتج false لن يتم تنفيذ محتوى العبارة
- increment counter: ثالث مدخل نقوم بزيادة قيمة اول مدخل counter
مثال:
<?php
for ($i=1; $i <= 5; $i++) {
echo "The number is: $i <br>";
}
ناتج عمل الكود
عبارة foreach
عبارة foreach تعمل فقط مع المصفوفات arrays حيث انها ستقوم بتكرار الأومر البرمجية بعدد مفاتيح/قيم المصفوفه
Syntax
foreach ($array as $value) {
# code...
}
لو كان لدينا مصفوفه تحتوي على 5 عناصر فانه عند استخدام عبارة foreach سيتم تكرار الاوامر البرمجية داخل عبار foreach خمس مرات وبكل مره سوف يتم تعيين العنصر من المصفوفه كقيمة للمتغير value بالترتيب حيث ستبدا العبارة باول عنصر بالمصفوفة وصولا الى آخر عنصر ثم تتوقف عن العمل
مثال:
<?php
$var = array('ali', 'mansour', 'abdullah', 'moath', 'mohammed');
foreach ($var as $value) {
echo "$value <br>";
}
ناتج عمل الكود
كما نعلم ان المصفوفات تخزن البيانات على شكل مفتاح و قيمة key-value ولدينا عدة انواع للمصفوفات ممكن معرفة المزيد عنهم من درس انواع البيانات
ونسطيع باستخدام عبارة foreach ان نقوم بتعيين مفتاح العنصر المخزن في المصفوفه لمتغير ثم تعيين القيمة لمتغير آخر لتنفيذ الاوامر البرمجية داخل العبارة
مثال:
<?php
$var = array('ali', 'mansour', 'abdullah', 'moath', 'mohammed');
foreach ($var as $key => $value) {
echo "$key: $value <br>";
}
ناتج عمل الكود
مفيدة جدا عند التعامل مع بقية انواع المصفوفات مثلا عند التعامل Associative arrays نسطيع تعيين index لمتغير وقيمته لمتغير آخر والإستفادة منهم عند تنفيذ الأوامر داخل العبارة
مثال:
<?php
$myInof = array('name' => 'ali', 'age' => 29, 'from' => 'KSA');
foreach ($myInof as $key => $value) {
echo "$key: $value <br>";
}
ناتج عمل الكود
محتوى الدورة
الكلمات الدليلية
عن الدرس
2 إعجاب |
0 متابع |
0 مشاركة |
14957 مشاهدات |
منذ 8 سنوات |
التعليقات (0)
عرض المزيد.. جديد دوراتي
عرض المزيد.. جديد مقالاتي
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !