在PHP开发中,直接输出数组数据是调试程序时最常见的操作之一。无论是接口返回结果、数据库查询结果还是配置项,往往都以数组形式存在,快速将其打印出来有助于定位问题。

一、使用print_r输出数组
print_r是PHP内置函数,用于将变量以易读形式打印。对于数组,它会列出键和值。在网页中直接输出时,HTML会忽略换行,通常用pre标签包裹保持格式。
<?php
$data = array(
'name' => '张三',
'age' => 25,
'list' => array('a', 'b', 'c')
);
echo '<pre>';
print_r($data);
echo '</pre>';
?>
二、使用var_dump查看详细信息
var_dump不仅会输出数组的键值,还会显示每个元素的数据类型和长度,适合需要确认类型的场景。
<?php $arr = array(1, 'hello', true); echo '<pre>'; var_dump($arr); echo '</pre>'; ?>
三、使用var_export获取数组代码
var_export可以把数组输出成PHP代码形式,方便复制到文件中作为配置使用。
<?php
$config = array('host' => '127.0.0.1', 'port' => 3306);
echo '<pre>';
var_export($config);
echo '</pre>';
?>
四、常见技巧对比
| 函数 | 输出内容 | 适用场景 |
|---|---|---|
| print_r | 键与值,结构清晰 | 快速查看数组内容 |
| var_dump | 类型、长度、值 | 调试类型相关问题 |
| var_export | 合法PHP代码 | 生成配置或日志 |
小提示
如果在命令行下运行PHP脚本,不需要pre标签,直接调用函数即可。生产环境应避免向用户暴露数组打印信息,防止敏感数据泄露。
调试完毕后,请记得删除或注释掉数组打印语句,保持代码整洁和安全。
错误处理中的数组输出
当使用try-catch捕获异常时,也可将错误上下文数组用print_r写入日志文件:
<?php
function log_error($context) {
file_put_contents('error.log', print_r($context, true), FILE_APPEND);
}
$user = array('id' => 10, 'email' => 'test@ipipp.com');
log_error($user);
?>
通过上述方法,开发者能够根据不同需求选择合适的PHP数组输出方式,提升调试与开发效率。