PHP 数组动态展示 HTML 有五种方式:一、foreach+echo;二、拼接 HTML 字符串后输出;三、implode+array_map 生成列表;四、JSON 传 JS 渲染;五、模板引擎如 Twig。

如果您拥有一个 PHP 数组,需要将其内容动态展示在 HTML 页面中,则需借助 PHP 的循环结构与 HTML 标签结合输出。以下是几种常见且实用的实现方式:
一、使用 foreach 循环配合 echo 输出 HTML
该方法适用于关联数组或索引数组,通过 PHP 嵌入 HTML 的方式逐项生成 DOM 结构,灵活性高且易于控制样式和布局。
1、在 PHP 文件中定义数组,例如:$fruits = [‘apple’ => ‘苹果‘, ‘banana’ => ‘ 香蕉 ’, ‘orange’ => ‘ 橙子 ’];
2、在 HTML 区域中开启 PHP 标签,使用 foreach 遍历:php foreach ($fruits as $key => $value) {echo ‘
‘ . htmlspecialchars($key) . ‘: ‘ . htmlspecialchars($value) . ‘
立即学习“PHP 免费学习笔记(深入)”;
‘; } ?>
3、确保在输出前调用 htmlspecialchars() 函数,防止 XSS 注入风险。
二、构建 HTML 字符串后一次性 echo
此方式先将整个 HTML 结构拼接为字符串,再统一输出,适合需对输出顺序或嵌套层级进行精细控制的场景。
1、初始化空字符串:$htmlOutput = ”;
2、遍历数组并追加 HTML 片段:foreach ($fruits as $k => $v) {$htmlOutput .= ‘
‘; }
3、在 HTML 主体中输出:
三、使用 implode()配合数组映射生成列表
适用于一维索引数组,利用 array_map() 处理每项后再用 implode() 连接成 HTML 字符串,代码简洁高效。
1、定义简单数组:$colors = [‘red’, ‘green’, ‘blue’];
2、使用 array_map 封装 HTML 标签:$items = array_map(function($c) {return ‘
‘; }, $colors);
3、合并并输出:‘ . implode(”, $items) . ”; ?>
四、通过 JSON 传递至 JavaScript 渲染
当需要 前端 交互或动态更新时,可将 PHP 数组 编码 为 JSON,交由 JavaScript 解析并生成 HTML,实现前 后端 职责分离。
1、在 PHP 中输出 JSON 数据块:
`); });
3、注意在 json_encode() 中添加 JSON_UNESCAPED_UNICODE 标志以保留中文字符。
五、使用模板引擎语法(如 Twig 示例)
若项目已集成 Twig 等模板引擎,可将数组直接传入模板,在视图层完成 HTML 渲染,提升可维护性与安全性。
1、在 PHP 控制器中赋值:$twig->render(‘list.html’, [‘items’ => $fruits]);
2、在 list.html 模板中写:{% for key, value in items %}
{{key}}: {{value}}
{% endfor %}
3、Twig 默认自动转义输出,无需手动调用htmlspecialchars()。