ایجاد لوپ با for

- 3 هفته پیش
توسط بهنام فلاح پور آپدیت شد
Amir fazel ( 600 تجربه )
3 هفته پیش

سلام و وقت بخیر

من یک مشکلی دارم به تعداد زیادی آرایه دارم که نمی دونم چه تعداد استرینگ داخلشون هست. حالا می خواستم با استفاده از for خروج ازشون بگیرم: به این صورت است.

//$title = array('title1', 'title2', 'title3');
//$autour = array('autour1', 'autour2', 'autour2');

$title = array('title1');
$autour = array('autour1');

for($i = 0; $i < 2; $i++){
    echo $title[$i].' : '.$autour[$i];
}

مشکل اینجاست که اگر ارایه یک استرینگ داشته باشد همچنین اروری دریافت می کنیم:

Notice: Undefined variable: id in I:\xampp\htdocs\yourTest\test4.php on line 7

Notice: Undefined index: in I:\xampp\htdocs\yourTest\test4.php on line 7
title1 : 
Notice: Undefined variable: id in I:\xampp\htdocs\yourTest\test4.php on line 7

Notice: Undefined index: in I:\xampp\htdocs\yourTest\test4.php on line 7
title2 :

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

بهترین پاسخ انتخاب شده توسط Amir fazel
بهنام فلاح پور
3 هفته پیش

میشه با if کنترلش کرد.
مثلاً :

$counter = count($autour);

if ($counter >= 5) {
    for($i = 0; $i < 5; $i++)
    {
        echo $title[$i].' : '.$autour[$i].'<br>';
    }
}
else {
    for($i = 0; $i < $counter; $i++)
    {
        echo $title[$i].' : '.$autour[$i];
    }
}
بهنام فلاح پور ( 4745 تجربه )
3 هفته پیش

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

for($i = 0; $i < count($autour); $i++){
    echo $title[$i].' : '.$autour[$i];
}
Amir fazel ( 600 تجربه )
3 هفته پیش

سلام مرسی ممنون

ولی این روش را می دونستم منتهی مشخص نیست شاید 1000 تا استرینگ در یک آرایه باشد و ما نمی خواهیم همش را نمایش بدهم.
می خواستیم به تعدا محدود echo بشه. مثلا 5 تاش فقط.

بهنام فلاح پور ( 4745 تجربه )
3 هفته پیش

میشه با if کنترلش کرد.
مثلاً :

$counter = count($autour);

if ($counter >= 5) {
    for($i = 0; $i < 5; $i++)
    {
        echo $title[$i].' : '.$autour[$i].'<br>';
    }
}
else {
    for($i = 0; $i < $counter; $i++)
    {
        echo $title[$i].' : '.$autour[$i];
    }
}
برای ارسال پاسخ باید وارد سایت شوید