Foreach для массивов внутри массива в контроллере Codeigniter - PullRequest
0 голосов
/ 17 ноября 2018

У меня есть массив массивов, и я сделал print_r его, и он вернул это ...

Array ( 
    [0] => Array 
    ( 
        [0] => Array 
        ( 
            [cust_id] => xl 
            [project_id] => central 
            [tot_ticket] => 1 
            [person] => jamesbay@example.com ) 
        [1] => Array 
        ( 
            [cust_id] => tsel 
            [project_id] => jabo1 
            [tot_ticket] => 1 
            [person] => jamesbay@example.com ) 
        [2] => Array 
        ( 
            [cust_id] => isat 
            [project_id] => jabo2 
            [tot_ticket] => 1 
            [person] => jamesbay@example.com ) ) )

Я сейчас пишу это в моем контроллере:

for ($i=0; $i<count($customerField); $i++) {
                for ($j=0; $j<count($activityField); $j++) { 
                    for ($k=0; $k<count($userIdField); $k++) { 
                        array_push($data, $this->queries_trend->fetch_ajax($customerField[$i], $activityField[$j], $userIdField[$k]));
                            foreach ($data as $value) {
                                $test .= '
                                            <tr>
                                                <td>' . $value[$i][$j]['cust_id']->cust_id . '</td>
                                                <td>' . $value[$i][$j]['project_id'] ->project_id. '</td>
                                                <td>' . $value[$i][$j]['tot_ticket']->tot_ticket . '</td>
                                                <td>' . $value[$i][$j]['person']->person . '</td>
                                            </tr>';    
                            }
                    }

                }
            }

У меня есть проблема, чтобы получить значение каждого массива, кто-нибудь здесь может помочь мне найти решение?

1 Ответ

0 голосов
/ 17 ноября 2018

Вы пытаетесь получить доступ к данным из объекта, используя ['cust_id']->cust_id, но у вас есть массив, поэтому вы можете использовать просто ['cust_id'].

Попробуйте использовать, например, foreach:

$test = "";
foreach ($arrays as $data) {
    foreach ($data as $value) {
        $test .= "<tr>";
        $test .= "<td>" . $value["cust_id"] . "</td>";
        $test .= "<td>" . $value["project_id"] . "</td>";
        $test .= "<td>" . $value["tot_ticket"] . "</td>";
        $test .= "<td>" . $value["person"] . "</td>";
        $test .= "</tr>";
    }
}

echo $test;
...