وایل تودرتو

پرسیده شده
فعالیت 1225 روز پیش
دیده شده 613 بار
1

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

$users = array(["ali",37],["amir",36],["reza",34],["hesam",37]);
$i = 0;
$j = 0;
while ($i < sizeof($users)){
    while ($j < sizeof($users[$i])){
        switch ($j){
            case 0:
                echo "name : ". $users[$i][$j];
                $j++;
                break;
            default:
            echo " age: ". $users[$i][$j]."<br>";
            $j++;
        }
        
    }
    $i++;
}
فایل پیوست

2
حذف شده

سلام. مقدار اولیه متغیر j را در جایی قرار داده اید که بعد از اجرای اول j=3 می شود و در مراحل بعدی که i افزایش می یابد چون j=3 است وارد حلقه نمی شود.

(پرکاربردترین و ساده ترین کار استفاده از foreach است.

<?php
$users = array(["ali",37],["amir",36],["reza",34],["hesam",37]);


$i = 0;
while ($i < sizeof($users)){
    // echo "i=".$i.PHP_EOL;
    $j = 0;
    while ($j < sizeof($users[$i])){
        // echo "j=".$j.PHP_EOL; 
        switch ($j){
            case 0:
                echo "name : ". $users[$i][$j].PHP_EOL;
                break;
            case 1:
                echo "age: ". $users[$i][$j].PHP_EOL;
                break;
            default:
            echo "Error";
        }    
        $j++;     
    }
    $i++;
}

فایل پیوست

adele khl

توسط

adele khl

1 دی 99

حذف شده
سلام و احترام، سعی کنید از switch هم استفاده نکنید و از همون if ها استفاده کنید
حذف شده
سلام ممنونم ولی دلیل اینکه من وایل استفاده کردم فقط خواستم نمونه برنامه ای بنویسم که نیاز به استفاده از foreach نباشه در کل ممنونم نکته بعدی برنامه من تنها اشکالش این بود که متغیر j رو خارج از وایل اول بهش صفر داده بودم در نتیجه خروجی نداشت
حذف شده
ضمنا این .PHP_EOL چی هست و چیکار میکنه