Возвращение результатов базы данных в виде массива - PullRequest
0 голосов
/ 24 марта 2011

У меня есть следующий код:

$a=array(
    'last' => array('Ford', 'Smith', 'Jones', 'Thomas'),
    'first' => array('Joe', 'Kyle', 'Nick'),
    );

У меня есть все эти имена в моей базе данных, и еще пара, как возраст и т. Д.

Как я могу извлечь все записи из базы данных и установить их как массив для $ a? Мне нужно, чтобы они были в формате выше

Ответы [ 2 ]

0 голосов
/ 25 марта 2011

Просто чтобы опубликовать очевидное ... приложение активной записи codeigniter ответа @ Нила будет выглядеть так:

$this->db->select('first,last,age');
    $query = $this->db->get('my_table');
    $results = $query->results();
    if($query->num_rows() > 0 ){
        foreach($results as $result as $key=>$value){
            $all[$key][] = $value;
        }

Я пропустил проверку, потому что я обычно делаю это в представлении.

0 голосов
/ 24 марта 2011

Вы пробовали это:

$query = "SELECT last, first from names"; //whatever the query is...
$results = mysql_query($query);
$all = array();
while($row = mysql_fetch_array($results)){
   foreach($row as $key=>$value){
       if(!isset($all[$key])) $all[$key] = array();
       $all[$key][] = $value;
   }
}

Результаты будут выглядеть примерно так:

$all=array(
    'last' => array('Ford', 'Smith', 'Jones', 'Thomas'),
    'first' => array('Joe', 'Kyle', 'Nick','Allen'),
...
    );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...