MySQL / PHP: как получить столбцы и связанные данные

Я знаю, что я могу получить имена столбцов / полей из базы данных, используя: SHOW COLUMNS FROM tablename … но есть ли способ получить возвращаемые столбцы, а также содержимое, поэтому мое возвращение будет примерно таким:

array [0] [0] = имя столбца 1
array [0] [1] = имя столбца 2
array [0] [2] = имя столбца 3

array [1] [0] = значение столбца 1 строка 1
array [1] [1] = значение столбца 2 строки 1
array [1] [2] = значение столбца 3 строки 1

Я хочу создать объект JSON

jsonObj = {item 1 {
имя столбца 1: значение столбца 1 строка 1,
имя столбца 2: значение столбца 2 строки 1,
column 3 name: column 3 row 1 value …

Изменить: я должен добавить, что знаю, что имена полей возвращаются с результатами запроса

(SELECT * FROM sometable), и если вы используете

 while ($row = mysql_fetch_array($results)) { $thisfield = $row['fieldname']; } 

Но как я могу получить к ним доступ (имена полей), когда я их не знаю?

используйте mysql_fetch_assoc – он вернется

array ("name" => "value", "name2" => "value2" …);

затем используйте json_encode ($ data)

Использование mysql_fetch_assoc() или эквивалент в любой используемой библиотеке БД предоставит имена столбцов в виде ключей массива.

 $results = array(); while ($row = mysql_fetch_assoc($db_result)) { $results[] = $row; } foreach ($results as $column=>$value) { // loop over $column and $value }