2013-02-13 3 views
0

У меня проблема с реализацией динамического 2-мерного массива. Это так, как я это делаю:PHP динамический многомерный массив

$array_ = array(); 
$values = array(); 

foreach ($querryresult as $row){ 
    array_push($value, $row['id']; 
    array_push($value, $row['title']; 
    array_push($array_, $value); 
} 
var_dump(#array_); 

Проблема заключается в том, что мой запрос возвращает 3 строки, но мой результат выглядит следующим образом: -

Array ([0] => Array ([0] => 44 [1] => Game of Thrones)) 

Кто-нибудь есть какие-либо идеи, что я делаю неправильно ?

+0

'$ array_ = new Array();' это недопустимый синтаксис PHP. Удалить «новое», массивы не являются объектами. –

ответ

6
$array_ = Array(); 

foreach ($querryresult as $row){ 
    $values = Array(); 

    array_push($values, $row['id']; 
    array_push($values, $row['title']; 
    array_push($array_, $values); 
} 
var_dump($array_); 

или даже проще

$array_ = Array(); 

foreach ($querryresult as $row){ 
    array_push($array_, 
     array(
      $row['id'], 
      $row['title'] 
     ) 
    ); 
} 
var_dump($array_); 
1

Намного чище.

$array_ = []; 

foreach ($querryresult as $row){ 
    $array_[] = [$row['id'], $row['title']]; 
} 

var_dump($array_); 
Смежные вопросы