如何将phpinfo()函数的输出内容存储到变量中?
如何将phpinfo的输出内容存储到变量中
phpinfo函数默认会直接向浏览器输出内容,且返回布尔值,无法直接通过返回值获取输出内容。可以利用PHP的输出缓冲机制来实现需求,具体步骤如下:
- 开启输出缓冲:调用
ob_start(),开启后所有后续的输出都会被暂存到缓冲区,不会直接发送到客户端。 - 执行phpinfo:调用
phpinfo(),此时它的输出会被缓冲区捕获,而非直接输出。 - 获取缓冲区内容并关闭缓冲:使用
ob_get_clean()函数,该函数会返回缓冲区中的所有内容,同时关闭输出缓冲,将内容存入变量即可。
完整代码示例:
// 开启输出缓冲 ob_start(); // 执行phpinfo,输出被缓冲捕获 phpinfo(); // 获取缓冲内容并关闭缓冲,赋值给变量 $phpinfo_content = ob_get_clean(); // 示例:输出变量内容 echo $phpinfo_content; // 示例:将内容写入文件保存 file_put_contents('phpinfo_detail.html', $phpinfo_content);
说明:ob_get_clean()是ob_get_contents()(获取缓冲内容)和ob_end_clean()(关闭并清空缓冲)的组合,一步完成内容获取和缓冲清理,代码更简洁。
内容的提问来源于stack exchange,提问作者devope
相关产品推荐
相关产品推荐

