当前位置:首页 > PHP

php数组实现表格

2026-02-16 12:31:59PHP

使用PHP数组生成HTML表格

PHP数组可以方便地转换为HTML表格,以下是几种常见实现方式:

php数组实现表格

基础数组转表格

$data = [
    ['Name', 'Age', 'City'],
    ['John', 25, 'New York'],
    ['Jane', 30, 'London'],
    ['Mike', 22, 'Paris']
];

echo '<table border="1">';
foreach ($data as $row) {
    echo '<tr>';
    foreach ($row as $cell) {
        echo '<td>'.$cell.'</td>';
    }
    echo '</tr>';
}
echo '</table>';

关联数组转表格

$users = [
    ['name' => 'John', 'age' => 25, 'city' => 'New York'],
    ['name' => 'Jane', 'age' => 30, 'city' => 'London'],
    ['name' => 'Mike', 'age' => 22, 'city' => 'Paris']
];

echo '<table border="1"><tr>';
foreach (array_keys($users[0]) as $header) {
    echo '<th>'.ucfirst($header).'</th>';
}
echo '</tr>';

foreach ($users as $user) {
    echo '<tr>';
    foreach ($user as $value) {
        echo '<td>'.$value.'</td>';
    }
    echo '</tr>';
}
echo '</table>';

使用函数封装表格生成

function arrayToTable(array $data, $headers = null) {
    $html = '<table border="1">';

    if ($headers) {
        $html .= '<tr>';
        foreach ($headers as $header) {
            $html .= '<th>'.$header.'</th>';
        }
        $html .= '</tr>';
    }

    foreach ($data as $row) {
        $html .= '<tr>';
        foreach ($row as $cell) {
            $html .= '<td>'.$cell.'</td>';
        }
        $html .= '</tr>';
    }

    $html .= '</table>';
    return $html;
}

$data = [
    [1, 'Apple', 0.99],
    [2, 'Orange', 1.25],
    [3, 'Banana', 0.50]
];
echo arrayToTable($data, ['ID', 'Product', 'Price']);

从数据库结果生成表格

// 假设$result是PDO查询结果
$result = $pdo->query("SELECT * FROM products");

echo '<table border="1"><tr>';
for ($i = 0; $i < $result->columnCount(); $i++) {
    $meta = $result->getColumnMeta($i);
    echo '<th>'.$meta['name'].'</th>';
}
echo '</tr>';

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    echo '<tr>';
    foreach ($row as $value) {
        echo '<td>'.$value.'</td>';
    }
    echo '</tr>';
}
echo '</table>';

添加CSS样式

$data = [
    ['Quarter', 'Revenue'],
    ['Q1', 15000],
    ['Q2', 22000],
    ['Q3', 18000],
    ['Q4', 25000]
];

echo '<style>
    .data-table { border-collapse: collapse; width: 100%; }
    .data-table th, .data-table td { border: 1px solid #ddd; padding: 8px; }
    .data-table th { background-color: #f2f2f2; text-align: left; }
    .data-table tr:nth-child(even) { background-color: #f9f9f9; }
</style>';

echo '<table class="data-table">';
foreach ($data as $row) {
    echo '<tr>';
    foreach ($row as $cell) {
        echo (is_string($cell) && $row === $data[0]) ? '<th>'.$cell.'</th>' : '<td>'.$cell.'</td>';
    }
    echo '</tr>';
}
echo '</table>';

这些方法展示了如何将PHP数组转换为HTML表格,从简单实现到更复杂的样式处理,可以根据实际需求选择适合的方式。

标签: 数组表格
分享给朋友:

相关文章

如何实现vue表格联动

如何实现vue表格联动

实现Vue表格联动的方法 使用Vue的响应式数据和计算属性 通过Vue的响应式数据特性,可以轻松实现表格之间的联动。定义一个共享的数据源,并在多个表格组件中使用这个数据源。利用计算属性对数据进行处理,…

vue实现表格选择

vue实现表格选择

Vue 实现表格选择功能 在 Vue 中实现表格选择功能可以通过多种方式完成,常见的方法包括使用复选框、单选框或通过点击行高亮选中。以下是几种常见的实现方式。 使用复选框实现多选 在表格的每一行添加…

vue实现表格搜索

vue实现表格搜索

实现表格搜索功能 在Vue中实现表格搜索功能,可以通过以下步骤完成: 数据绑定与搜索输入框 创建一个输入框用于接收用户输入的搜索关键词,使用v-model实现双向绑定。 <template…

vue循环实现表格

vue循环实现表格

Vue 循环实现表格的方法 在 Vue 中,可以通过 v-for 指令循环渲染表格数据。以下是一些常见的实现方式: 基础表格循环 使用 v-for 循环数组数据生成表格行: <templat…

vue 实现树形表格

vue 实现树形表格

实现树形表格的基本思路 在Vue中实现树形表格通常需要结合递归组件或第三方库。核心逻辑是将嵌套的树形数据通过递归渲染,并支持展开/折叠操作。 使用递归组件实现 定义一个递归组件,通过v-for循环渲…

vue实现表格打印

vue实现表格打印

Vue 实现表格打印的方法 使用 window.print() 方法 在 Vue 中可以通过调用浏览器的 window.print() 方法实现打印功能。创建一个打印按钮,点击时触发打印事件。 &l…