آموزش کامل حلقه های تکرار (LOOPS) در PHP

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

نکته: در صورتی که نیازمند قرار گرفتن آموزش خاص و یا مطلبی به صورت رایگان در حوزه های حسابداری و کامپیوتر هستید آن را در قسمت نظرات همین صفحه وارد کنید.

سلام دوستان در این سری از مقاله های آموزش PHP ما می ریم سراغ آموزش کامل حلقه های تکرار (LOOPS) در PHP و به صورت کامل با حلقه های تکرار که یکی از مهم ترین و پر تکرار ترین موضوعات در PHP هستند می پردازیم.

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

در زبان برنامه نویسی PHP هم ما از این قاعده مستثنی نیستیم و می بایست در بسیاری از زمان ها از حلقه های تکرار برای انجام کار های گوناگون استفاده کنیم.

به طور مثال

باید هنگامی که می خواهیم اطلاعاتی را از دیتابیس دریافت کنیم و تمامی آن ها را به تعداد مقادیری که داخل دیتابیس موجود هستند به نمایش بگذاریم از حلقه های تکرار استفاده کنیم.

یا زمانی که در مبحث ساخت صفحه بندی برای سایت خود هستیم هم باید از آن ها استفاده کنیم تا هرگاه لازم بود که صفحه برای سایت ما ایجاد کنند.

حلقه های تکرار در کنار آرایه ها از پرتکرار ترین مباحث در هر زبان برنامه نویسی و به خصوص PHP هستند.

در این جا ما با کارایی و اهمیت حلقه های تکرار آشنا شدیم اما آن ها واقعا چه هستند و برای چه کاری ساخته شده اند.

حلقه های تکرار در PHP

اگر بخواهم که تعریف ساده و مختصر از حلقه های تکرار یا LOOPS به شما ارائه بدهم آن وقت می گویم:

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

سوالی که پیش می آید این است که ما در PHP چند حلقه تکرار داریم؟

انواع حلقه های تکرار در PHP

به طور  کلی ما در زبان برنامه نویسی PHP دارای چهار حلقه تکرار یا LOOP هستیم.

این حلقه بر اساس کاراییشان در شرایط های گوناگون استفاده می شود و ما در این مقاله به بررسی و حل مسئله و مثال با هر کدام از آن ها می پردازیم.

لیست این حلقه های و عملکرد آن ها در زیر ذکر شده است

حلقه تکرار while در PHP – حلقه تکرار while دستور، رشته و یا یک عدد را تا زمانی که یک مقدار در شرایط معین و یا درست قرار گرفته باشد تکرار می کند.

حلقه تکرار for در PHP – حلقه تکرار for یک دسته و یا مقدار را به تعداد مشخص شده تکرار می کند خواه درست باشد و یا اشتباه.

حلقه تکرار foreach در PHP – حلقه تکرار foreach بیشتر برای آرایه ها به کار می رود و مقادیر و دسته های موجود در آرایه را  نمایش می دهد وآن هارا تکرار می کند.

حلقه تکرار do…while در در PHP – حلقه تکرار do…while حتی در صورت اشتباه بودن یک مقدار، آن را یک بار تکرار می کند اما اگر آن مقدار درست بود به صورت مکرر تکرار می کند.

شاید جالب باشد بدانید که برخی از این حلقه ها مانند حلقه تکرار for  و foreach در بسیاری از زبان ها برنامه نویسی مطرح نیز وجود دارند.

خب حالا وقت آن رسیده که بیایم و کمی با این حلقه ها کار کنیم و با طرز کار آن ها به صورت کامل آشنا شویم

حلقه تکرار while در PHP

به طور کلی ظاهر شیوه کارکرد حلقه تکرار while در PHP به صورت زیر است.

while (true) {
    تا وقتی که شرط درست داخل پرانتز باشد تکرار می شود
}

به طور مثال قطه کد زیر به صورت بی نهایت تکرار می شود و هیچگاه پایان نمیابد.

(دقت کنید که بهتر است از ایجاد کردن حلقه های بی نهایت خودداری کنید چرا که باعث می شود فشار سیستم بالا رود و شاید منجر به سوخته شدن کامپیوتر و یا لپتاب شما شود)

while (true) {
    echo 'Hello World';
}

حلقه بالا همیشه یک مقدار درست را دریافت می کند و برای همیشه آن را تکرار می کند اما از حلقه تکرار while استفاده های دیگری می شود.

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

به طور مثال:

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

اما می توان کار های دیگری با این حلقه انجام داد به مثال زیر دقت کنید.

$num = 1;
while($num <= 5) {
  echo  $num++;
}

در مثال زیر ما شاهد این هستیم که از عدد ۱ تا ۵ برایمان چاپ می شود، چراکه در حلقه while گفته ایم که مقدار متغیر num کوچک تر و مساوری عدد ۵ می باشد.

درون حلقه ما گفتیم که مقادیری که به متغیر num اختصاص داده شده یعنی از عدد ۱ تا ۵ برایمان چاپ شود. حلقه while تا زمانی که مقدار تا متغیر num درست باشد و به پنج برسد آن را تکرار می کند و بیشتر از آن آن را ادامه نمی دهد زیرا از حالت درست داخل متغیر خارج می شود.

خب تا الان با حلقه تکرار while در PHP آشنا شدیم و حالا می خواهیم با طرز کار حلقه for آشنا بشیم.

حلقه تکرار for در PHP

ساختار حلقه تکرار for در PHP  با حلقه های دیگر کمی متفاوت می باشد.

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

ساختار حلقه تکرار for به صورت زیر می باشد.

for (initialization; condition; increment)
{
    code to be executed;
}

این حلقه در داخل پرانتز خود سه پارامتر را دریافت می کند که به بررسی آن ها می پردازیم

initialization  = متغیری می باشد که یک مقدار حاوی عدد است و درواقع می توان گفت که شمارشگر ما از اینجا مقدار می گیرد.

condition = بازه شمارش گر را تعریف می کند و می گوید که مقادیر در این بازه تکرار شوند.

increment =  شماشگر ما، مقدار خاصی دارد که با توجه به آن مقدار و بازه آن، باید فرایند کاهش و یا افزایش را داشته باشد.

حالا ما یک نمونه ساده از این حلقه را ایجاد می کنیم.

for ($i = 0; $i<=10;$i++) {
    echo $i;
}

در مثال بالا ما در حلقه for یک متغیر که برابر با صفر بود را مشخص کردیم.

سپس بازه آن را کوچک تر و مساوری عدد ۱۰ گذاشتیم و در آخر گفتیم که این متغیر فرایند افزایشی را داشته باشد.

سپس در داخل حلقه گفتیم که برای ما این متغیر i رو چاچ کنه. نتیجه ای که شما مشاهده می کنید عدد ۰ تا ۱۰ می باشد.

باید بدانید که ما می توانید به جای اینکه بگیم متغیر i رو چاپ کنه بگیم که یک مقدار دیگه مثلا یک متن رو چاپ کنه. نتیجه ای که می بینید تکرار ۱۰ مرتبه ای آن مقدار هست.

خب تا الان با حلقه تکرار for در PHP آشنا شدیم و حالا می خواهیم با طرز کار حلقه foreach آشنا بشیم.

حلقه تکرار foreach در PHP

گفتیم که حلقه تکرار foreach در PHP برای نمایش مقادیر و دسته های یک آرایه به کار می رفت  و مقادیر را بر اساس تعداد مقادیر موجود در آرایه های تکرار می کرد و آن هارا به نمایش می گذاشت.

ساختا حلقه تکرار foreach به دو صورت می باشد.

(نکته: برای درک صحیح طرز کار حلقه foreach نیازمند یادگیری مبحث آرایه ها در PHP می باشد.) شما می توانید در مقاله آموزش کامل آرایه ها در PHP به صورت کامل با آرایه ها در PHP آشنا شوید).

foreach ($array as $value) {
    //code
}

خب درون حلقه تکرار foreach ما دو پارامتر را دریافت کردیم که یکی از آن ها متغیر مربوط به آرایه ما می باشد و دیگر مقدار های آن را دریافت می کند. 

به مثال زیر دقت کنید:

$array = array( 1,  2,  3, 4, 5);
foreach( $array as $value )
{
    echo $value;
}

ما در کد بالا یک آرایه را درون یک متغیر تعریف کردیم و چندین مقدار را به آن ها اختصاص دادیم.

سپس درون حلقه foreach گفتیم، این متغیرِ آریه های ما، مقدارشان را یه متغیر value بدهند و درون حلقه گفتیم که برای ما تمامی مقادیر آرایه مان که اکنون به متغیر value اختصاص داده شده اند نمایش گذاشته شوند.

اکنون به به نوع دیگر حلقه تکرار foreach در PHP می پردازیم که ساختار آن مانند زیر است.

foreach ($array as $key => $value) {
    //code
}

باید بدانید هر آرایه علاوه بر آن که می تواند چند مقدار داشته باشد می تواند برای هر مقدارش هم یک اسم داشته باشد.

ما در این شیوه نگارش حلقه تکرار foreach هم به اسامی این آرایه ها دسترسی داریم و هم به مقدارشان و می توانیم کار های جالبی را با آن ها انجام دهیم.

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

کار با آرایه ها در PHP

خب تا الان با حلقه تکرار foreach در PHP آشنا شدیم و حالا می خواهیم با طرز کار حلقه do…while آشنا بشیم.

حلقه تکرار do…while در در PHP

گفتیم که حلقه تکرار do…while حتی در صورت دریافت کردن مقدار نادرست آن را یک بار تکرار می کند و اگر مقدارش درست با شدن تکرار آن را ادامه می دهد.

ساختار حلقه تکرار do…while در PHP به صورت زیر می باشد.

do {
    در هر صورت یک بار مقادریر را تکرار می کند اما اگر شرط درست بود تکرار آن را ادامه می دهد
} while (شرط);

همانطور که در کد بالا می بیند حلقه تکرار do…while چنین ظاهری دارد.

در کد زیر ما با یک مثال عملی آن طرز کار آن را به شما نشان می دهیم.

do {
    echo 'hello world';
} while (false);

در کد بالا ما درون حلقه do گفتیم که hello world را چاپ کند آن هم در صورتی که حلقه while مقدار نادرستی را دریافت می کند.

نتیحه کار این است که شما یک بار کلمه hello world را مشاهده خواهید کرد.

همین طور به مثال زیر دقت کنید.

do {
    echo 'hello world';
} while (true);

در مثل بالا حلقه do یک بار hello world را چاپ می کند و چون که شرط حلقه تکرار while درست می باشد آن را تا بی نهایت تکرار می کند.

کد زیر نیز یک مثال دیگر از حلقه do…while می باشد.

$num = 1;
do {
    echo $num++;
} while ($num <= 5);

در مثال بالا ما یک متغیر تعریف کردیم و مقدار آن را برابر با ۱ گذاشتیم.

حلقه do آن را یک بار تکرار می کند و چون که بازه متغیر num کوچکتر و مساوی ۵ می باشد و همچنین یک بازه درست می باشد آن را تا تمام شدن بازه متغیر تکرار می کند یعنی از عدد ۱ تا ۵ را به ما به نمایش می گذارد.

خب مقاله ما در مورد حلقه های تکرار تموم شد و ما توی این مقاله به صورت کامل با حلقه های تکرار درون PHP آشنا شدیم.

همچین شما می تونید با شرکت در دوره  آموزش ساخت فروشگاه اینترنتی با PHP  به صورت رایگان با شیوه راه اندازی فروشگاه اینترنتی با زبان برنامه نوسی PHP آشنا بشید.

حتما نظرات خودتون را ارائه بدین.