با عرض سلام و ادب و احترام خدمت شما دوستان گرامی ، از اینکه همراه ما هستید خوشحالیم ، با اموزشی دیگر در زمینه پی اچ پی درخدم شما هستم .

در PHP حلقه ها {loops} به منظور دوباره اجرا کردن همان دسته یا گروه کد تکراری برای دفعات مشخص block of codes} } به کار می رود. PHP از چهار نوع حلقه ای زیر پشتیبانی می کند.

For، یک دسته کد را به دفعات مشخصی تکرار می کند.

while،  یک دسته کد را فقط تا زمانی که وضعیت معینی برقرار باشد تکرار می کند.

do. . . while،  یک دسته کد را یک بار تکرار می کند، سپس در صورتی که شرایط معین درست باشد آن حلقه را تکرار می کند.

foreach،  برای هر عنصر یا اِلمانِ موجود در آرایه {array} دسته کد را تکرار می کند.

اکنون درباره ی واژه های کلیدی {continue} ادامه دادن و break {قطع کردن} که برای کنترل کردن اجرا ها و دستورات loop استفاده می شود توضیح می دهیم.

دستور حلقه ای for

دستور حلقه ای for را زمانی استفاده می کنیم که دقیقا بدانیم چند بار می خواهیم یک دستور یا گروهی از دستورها را اجرا کنیم.

دستور نگارش

for (initialization; condition; increment)

{

code to be executed;

}

در اینجا از مقداردهنده ی اولیه، برای مشخص کردن ارزش اولیه شمارنده ی تعداد دفعات تکرار حلقه ای استفاده می شود.

مثال

مثال زیر پنج بار تکرار را نشان می دهد و ارزش مشخص شده دو متغیر را در هر بار گذر یا تکرار حلقه تغییر می دهد.

<html>

‎<body>

‎    $a = 0;‎

‎    $b = 0;‎

‎ ‎

‎    for( $i=0; $i<5; $i++ )‎

‎ {‎

‎ $a +=10;‎

‎ $b +=5;‎

‎ }‎

‎ echo (“at the end of the loop a=$a and b=$b” );‎

‎ ?>

body>‎

html>‎

نتیجه ی زیر به دست می آید.

At the end of the loop a=50 and b=25

دستور while در loop

دستور while دسته کد را تا زمانی که عبارت آزمایشی {تست عبارت} درست است اجرا می کند.

اگر عبارت آزمایشی درست باشد پس به تبع دسته کد اجرا می شود. پس از اینکه کد اجرا می شود، تست عبارت دوباره ارزشیابی می شود. loop {چرخش و تکرار} همچنان ادامه پیدا می کند تا نتیجه ی آزمایش، عبارت غلط در آید.

دستور نگارش {syntax}

while (condition)

{

code to be executed;

}

مثال

این مثال در هر مرحله ی چرخش و تکرار حلقه {loop}، یک ارزش را از متغیر کم می کند و در این حالت شمارنده به اضافه کردن ادامه می دهد تا به ۱۰ برسد و ارزشیابی غلط درآید و loop به پایان برسد.

<html>

<body>

$i = 0;

$num = 50;

while( $i < 10)

{

$num–;

$i++;

}

echo (“Loop stopped at i = $i and num = $num” );

?>

body>

html>

نتیجه زیر به دست می آید.

Loop stopped at i = 10 and num = 40

دستور do. . . . while در loop

دستور do. . . . while  هر دسته کد را حداقل یکبار اجرا می کند، سپس تکرار و حلقه را تا زمانی که وضعیت صحیح شود ادامه می دهد.

دستور نگارشی {syntax}

do

{

code to be executed;

}while (condition);

مثال

مثال زیر ارزش i را حداقل یکبار افزایش می دهد، سپس افزودن ارزش متغیر i را همچنان ادامه می دهد تا این که ارزش متغیر کمتر از ۱۰ باشد.

<html>

<body>

$i = 0;

$num = 0;

do

{

$i++;

}while( $i < 10 );

echo (“Loop stopped at i = $i” );

?>

body>

html>

نتیجه ی زیر به دست می آید.

Loop stopped at i = 10

دستور foreach در loop

دستور foreach  را برای تکرار کردن در آرایه ها به کار می بریم. در هر مرحله مقدار عنصر آرایه  جاری به  مقدار $ اختصاص داده می شود و اشاره گر آرایه یکی جا به جا می شود، و در مرحله ی بعدی عنصر بعدی پردازش می شود.

دستور نگارش {syntax}

foreach (array as value)

{

code to be executed;

}

مثال

مثال زیر مقدار های آرایه را فهرست می کند.

<html>

<body>

$array = array( 1،  ۲،  ۳،  ۴،  ۵);

foreach( $array as $value )

{

echo “Value is $value <br />”;

}

?>

body>

html>

نتیجه ی زیر به دست می آید.

Value is 1

Value is 2

Value is 3

Value is 4

Value is 5

}breakدستور{

کلید واژه ی break در PHP، نقش به پایان رساندن loop پیش از زمان مقرر را ایفا می کند. دستور break در داخل ساختمان دستور {statement block} قرار می گیرد. به شما کنترل و اختیار کامل می دهد و شما هر وقت که بخواهید می توانید از loop خارج شوید. پس از خارج شدن از حلقه، اولین دستور loop اجرا می شود.

مثال

در مثال زیر، زمانی که ارزش شمارنده ای به ۳ می رسد و حلقه پایان یابد، نتیجه ی آزمایش درست می شود.

<html>

<body>

$i = 0;

while( $i < 10)

{

$i++;

if( $i == 3 )break;

}

echo (“Loop stopped at i = $i” );

?>

body>

html>

نتیجه ی زیر به دست می آید.

Loop stopped at i = 3

دستور ادامه {continue}
کلید واژه ی continue در PHP  وظیفه ی متوقف کردن تکرار حلقه را دارد ولی آن را کاملا پایان نمی دهد.

دقیقا دستور break مانند دستور continue در داخل گروه دستورها قرار می گیرد که خود دربردارنده ی کدی است که loop اجرا می کند. پیش از هر دوی این دستورها تست وضعیت یا شرطی {conditionsl} انجام می شود. در مرحله ای که با دستور continue مواجه می شویم، بقیه ی کد حلقه نادیده گرفته می شود و سریع مرحله بعدی شروع می شود.

مثال

در مثال زیر، حلقه ارزش آرایه را پرینت می کند و نشان می دهد اما در صورتی که وضعیت درست شود کد را نادیده گرفته و ارزش بعدی را پرینت می کند.

<html>

<body>

$array = array( 1،  ۲،  ۳،  ۴،  ۵);

foreach( $array as $value )

{

if( $value == 3 )continue;

echo “Value is $value <br />”;

}

?>

body>

html>

نتیجه ی زیر به دست می آید.

Value is 1

Value is 2

Value is 4

Value is 5