2016-03-15 5 views
0

У меня есть функция, которая возвращает массив. При использовании print_r он дает мне что-то вроде этого;Эхо многомерные массивы

Array 
(
    [0] => Array 
     (
      [id] => LTEforServiceProvider 
      [key] => network 
      [parameters] => Array 
       (
        [0] => Array 
         (
          [id] => APN1 
          [value] => apn.qwerty.com 
         ) 

        [1] => Array 
         (
          [id] => APN2 
          [value] => * 
         ) 

        [2] => Array 
         (
          [id] => QCI 
          [value] => 9 
         ) 
       ) 
     ) 
) 

Как это будет выглядеть, как, когда она закодирована в PHP, и как я должен напечатать его с foreach цикла?

Этот массив довольно подавляющий, и это меня смущает. Я знаю, честно говоря, это глупый вопрос, и, вероятно, его уже спросили.

Я хочу, чтобы это было в столе, что-то вроде этого;

enter image description here

PHP, Symfony, а все остальные программирования до сих пор путают меня много, и я действительно трудное время с ним. Если кто-нибудь может мне помочь, это будет действительно здорово. Thanks

ответ

0

В таблице HTML? Вот .. это будет выравнивать данные соответственно в виде таблицы (Пожалуйста, используйте свойство CSS границы, чтобы установить границы таблицы во время тестирования на месте)

<?php 

$array = YOUR_ARRAY_HERE; 

$table = "<table>"; 
foreach($array as $key => $value){ 
    foreach($value as $k => $v){ 
    if(is_array($v)){ 
    $table .= "<tr><td>Parameters</td><td><table>"; 
    foreach($v as $pk => $pv){ 
     $table .= "<tr><td>".$pv['id']."/".$pv['value']."</td></tr>"; 
    } 
    $table .="</table></td></tr>"; 
    } 
    else{ 
     $table .= "<tr><td>$k</td><td>$v</td></tr>"; 
    } 
    } 
} 
$table .= "</table>"; 
echo $table; 
?> 

Обновлено скрипку: https://eval.in/537312

+0

Спасибо! Это работает отлично. Одна вещь; что, если в главном массиве я имею более одного массива. Вы понимаете? В данном примере это '$ массив = массив ( 0 => массив ( ... ... аль информация и другие массивы внутри ... )' Так как напечатать несколько таблиц, если я есть это так, '$ массив = массив ( 0 => массив ( ... ... ... ), 1 => Array (... ... аль другие данные и массивы внутри ...) '? –

+0

@ Mentos93 просто добавляет вложенный цикл для итерации, см. обновленный ответ – Vincent

Смежные вопросы