حلقه for زمانی استفاده می شود که شما از پیش می دانید اسکریپت چند بار باید اجرا شود. سینتکس زیر را ببینید:
for (initialization; condition; increment)
{
code to be executed;
}
پارامتر حلقه for
مقدار دهی: برای تنظیم یک شمارنده استفاده شده است.
شرط: اگر شرط درست باشد؛ حلقه ادامه پیدا می کند؛ اگر شرط غلط باشد؛ حلقه خاتمه پیدا می کند.
افزایش: برای افزایش مقدار در شمارنده به کار می رود.
مثال۱: (۵ بار چاپ عبارت)
<?php
for ($i=1; $i<=5; $i++)
{
echo “The Number is: “.$i.”<br/>”;
}
?>
خروجی کد بالا به صورت زیر است:
The number is 2
The number is 3
The number is 4
The number is 5
در مثال بالا می خواهیم عبارت کد نویسی ۵ بار چاپ بشود. ما مقدار دهی می کنیم تا مشخص کنیم که حلقه چند بار باید تکرار شود.
حلقه با
($i=1)
آغاز شده و با
($i<=5)
پایان می یابد.
بنابراین خروجی ۵ بار عبارت را تعریف می کند.
نوشتن یک برنامه برای چاپ کردن نام شما به تعداد ۵ بار:
<?php
$name=”rexx”;
for ($i=1; $i<=5; $i++)
{
echo “My Name is: “.$name.”<br/>”;
}
?>
خروجی کد بالا به صورت زیر است:
My Name is rexx
My Name is rexx
My Name is rexx
My Name is rexx
My Name is rexx
در مثال بالا؛ خروجی ۵ بار عبارت تعریف شده (My Name is ) را با یک متغیر (rexx) چاپ می کند.
یافتن جمع ۱ تا ۱۰۰:
<?php
$sum=0;
for ($i=1; $i<=100; $i++)
{
$sum=$sum+$i;
}
echo $sum;
?>
خروجی کد نویسی بالا به این صورت است: ۵۰۵۰
در مثال بالا، متغیر (num$) مقدار ۰ را اتخاذ می کند. حلقه ( )For برای چاپ حاصل جمع اعداد استفاده می شود. با تنظیم تکرار حلقه، تا زمانی که
($i<=100)
باشد؛ حلقه اجرا می شود. بنابراین خروجی عدد ۵۰۵۰ را چاپ می کند.
یافتن تمام اعداد فرد بین ۱ تا ۱۰۰:
<?php
for ($i=2; $i<=100; $i+=2)
{
echo $i.” “;
}
?>
خروجی کد بالا به صورت زیر است:
در مثال بالا؛ حلقه از
(i=2$)
آغاز شده و بعد از هر بار شمارش، i$ مقدار آن را به اندازه ۲ واحد افزایش داده و تمام مقادیر زوج را از ۱ تا ۱۰۰ چاپ می کند.
یافتن تمام اعداد فرد از ۱ تا ۱۰۰:
<?php
for ($i=1; $i<=99; $i+=2)
{
echo $i.” “;
}
?>
خروجی کد بالا به صورت زیر می باشد:
در مثال بالا، حلقه از
($i=1)
آغاز شده و تا
($i<=99)
به پایان می رسد، هر بار که حلقه اجرا می شود؛ $i مقدار آن را به اندازه ۲ واحد افزایش می یابد. اگر مقدار اولیه
($i=1)
باشد، مقدار بعدی ۳ می باشد. بنابراین، تمام مقادیر فرد چاپ می شوند.
یافتن حاصل جمع اعداد زوج و فرد بین ۱ تا ۱۰۰:
<?php
for ($i=1; $i<=100; $i++)
{
if($i%2==0)
{
@$even=$even+$i;
}
else
{
@$odd=$odd+$i;
}
}
echo “Sum of even numbers=”.$even.”<br/>”;
echo “Sum of odd numbers=”.$odd;
?>
خروجی کدنویسی بالا به صورت زیر می باشد:
در مثال بالا؛ حلقه For استفاده می شود؛ زیرا ما می دانیم که حلقه چند بار باید تکرار شود. درون حلقه ما شرط if…else را بیان کرده ایم.
اگر شرط
($%۲==۰)
درست باشد؛ کد اجرا می شود و حاصل جمع اعداد زوج محاسبه می شود. در غیر این صورت عبارت else اجرا می شود و حاصل جمع اعداد فرد را محاسبه می کند.
حاصل جمع اعداد زوج و فرد به صورت جداگانه چاپ می شود.
افزودن دو عدد با استفاده از حلقه (بدون استفاده از عملگر +):
<?php
@$f=$_GET[‘f’];
@$s=$_GET[‘s’];
for ($i=1; $i<=$s; $i++)
{
$f++;
}
echo “Sum of given numbers=”.$f;
?>
<body>
<form>
Enter first number <input type=”text” name=”f”><br/>
Enter Second number<input type=”text” name=”s”><br/>
<input type=”submit” value=”add”>
</form>
</body>
خروجی کد بالا به صورت زیر می باشد:
در مثال بالا، ابتدا یک اسکریپت HTML برای دریافت ورودی که کاربر وارد می کند؛ ایجاد می کنیم.
زمانی که یک مقدار توسط کاربر وارد شده و بر روی دکمه کلیک می شود، مقدار وارد شده به صفحه اسکریپت پی اچ پی منتقل می شود.
$_GET [ ]
برای دریافت مقداری که کاربر وارد می کند؛ استفاده می شود. اکنون حاصل جمع را محاسبه می کنیم. اما حاصل جمع با استفاده از عملگر (+) ایجاد می شود.
تکرار از
($i=1)
آغاز شده و تا
($<=$s)
اجرا می شود. این بدان معنی است که حلقه به مقداری که در باکس متنی دوم وارد می شود؛ بستگی دارد.
مقداری که توسط کاربر در باکس متنی اول وارد می شود ۵۰۰ است.
مقداری که توسط کاربر در باکس متنی دوم وارد می شود نیز ۵۰۰ است.
خروجی به این ترتیب ۱۰۰۰ می باشد. زیرا مقدار اولین باکس متنی افزایش یافته است.
اجرای حلقه for تا زمانی که شرط
($i<=$s)
صحیح باشد؛ ادامه می یابد.
تفریق دو عدد با استفاده از حلقه (بدون استفاده از عملگر -):
<?php
@$f=$_GET[‘f’];
@$s=$_GET[‘s’];
for ($i=1; $i<=$s; $i++)
{
$f–;
}
echo “Subtraction of given numbers=”.$f;
?>
<html>
<body>
<form>
Enter first number<input type=”text” name=”f”><br/>
Enter Second number<input type=”text” name=”s”><br/>
<input type=”submit” value=”Subtract”>
</form>
<body>
خروجی کد نویسی بالا به صورت زیر است: