ADODB5 (PHP): динамическое построение столбцов таблицы

#php #adodb

#php #adodb

Вопрос:

Я хочу знать, как динамически генерировать столбцы таблицы в adodb5.

Вот мой текущий код:

 <?php
$sql = "SELECT id FROM customers";
$query = $db->Execute($sql);
$rows = $query->GetRows();
$fields = $query->fields;

foreach($rows as $row) {
    print_r($row). '<br />';
}
?>
  

Результат, который я получаю, является:

Массив
(
 [id] => 280 
)
Массив
(
 [id] => 1024 
)
Массив
(
 [id] => 474 
)
Массив
(
 [id] => 476 
)
Массив
(
 [id] => 564
)
Массив
(
 [id] => 569 
)
Массив
(
 [id] => 594
)
Массив
(
 [id] => 385 
)
Массив
(
 [id] => 304 
)
Массив
(
 [id] => 700 
)
Массив
(
 [id] => 285 
)
Массив
(
 [id] => 205 
)
Массив
(
 [id] => 536
)
Массив
(
 [id] => 140 
)

Я буквально просто хочу, чтобы он захватил все столбцы в запросе и построил заголовки таблицы. Итак, в принципе, у меня будет таблица, в которой все «идентификаторы» находятся в одном столбце. На самом деле я хочу, чтобы столбцы были помечены, поэтому, если у меня есть более одного столбца, например, ID, Имя, дата, комментарий; он будет динамически знать, как создавать заголовки для каждого столбца. Это кто-то, кто может мне помочь?

Ответ №1:

Сначала вам нужно изменить ваш запрос, который получает строки данных:

 select * from customers
  

или, если вам нужны только определенные столбцы:

 select id, name from customers
  

затем вы можете выполнить итерацию по строкам и увидеть, что у вас есть объект или ассоциативный массив (я забыл, какой именно), который позволяет вам компоновать вашу таблицу. Для заголовков у вас уже есть $fields , поэтому просто выполните итерацию, чтобы сформировать заголовок:

 foreach ($fields as $name) {
    echo $name;
}
  

Надеюсь, это поможет.

Комментарии:

1. Что, если бы я хотел выбрать определенные столбцы?