Как получить названия столбцов наряду с набором результатов в php/mysql?

Неизменность хороша. Посмотрите Эффективный Java. Если бы необходимо было скопировать Строку каждый раз, когда Вы раздали ее, то это было бы большим количеством подверженного ошибкам кода. У Вас также есть беспорядок относительно который влияние модификаций который ссылки. Таким же образом то Целое число должно быть неизменным для поведения как интервал, Строки должны вести себя как неизменные для действия как примитивы. В строках передачи C++ значением делает это без явного упоминания в исходном коде.

12
задан Carlos Lima 5 December 2009 в 19:14
поделиться

3 ответа

Попробуйте функцию mysql_fetch_field .

Например:

<?php
$dbLink = mysql_connect('localhost', 'usr', 'pwd');
mysql_select_db('test', $dbLink);

$sql = "SELECT * FROM cartable";
$result = mysql_query($sql) or die(mysql_error());

// Print the column names as the headers of a table
echo "<table><tr>";
for($i = 0; $i < mysql_num_fields($result); $i++) {
    $field_info = mysql_fetch_field($result, $i);
    echo "<th>{$field_info->name}</th>";
}

// Print the data
while($row = mysql_fetch_row($result)) {
    echo "<tr>";
    foreach($row as $_column) {
        echo "<td>{$_column}</td>";
    }
    echo "</tr>";
}

echo "</table>";
?>
24
ответ дан 2 December 2019 в 03:18
поделиться

Используйте mysql_fetch_assoc , чтобы получить только ассоциативный массив и получить имена столбцов с первой итерацией:

$columns = array();
$resultset = array();
while ($row = mysql_fetch_assoc($result)) {
    if (empty($columns)) {
        $columns = array_keys($row);
    }
    $resultset[] = $row;
}

Теперь вы можете распечатать заголовок своей таблицы с первой итерацией:

echo '<table>';
$columns = array();
$resultset = array();
while ($row = mysql_fetch_assoc($result)) {
    if (empty($columns)) {
        $columns = array_keys($row);
        echo '<tr><th>'.implode('</th><th>', $columns).'</th></tr>';
    }
    $resultset[] = $row;
    echo '<tr><td>'.implode('</td><td>', $rows).'</td></tr>';
}
echo '</table>';
14
ответ дан 2 December 2019 в 03:18
поделиться

Вы хотите посмотреть на

 mysql_fetch_assoc

, который дает каждую строку как ассоциативную пару ключ => значение, где ключ является именем столбца.

Документация здесь

8
ответ дан 2 December 2019 в 03:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: