命令行怎么执行phpinfo_终端运行phpinfo输出结果法【实操】

终端直接运行phpinfo()会报错,因它是PHP函数而非shell命令;正确方法是php -r “phpinfo();”或php -a交互模式执行,注意CLI与Web环境配置不同。

命令行怎么执行phpinfo_终端运行phpinfo输出结果法【实操】

终端直接运行 phpinfo() 会报错,别硬试

直接在命令行敲 phpinfo() 不会输出信息,而是报错 PHP Fatal error: Uncaught Error: Call to undefined function phpinfo()。因为 phpinfo() 是 PHP 的内置函数,不是 shell 命令,必须在 PHP 解释器上下文中执行。

php -r 一行执行最简单

这是最快捷、无需写文件的方法,适合快速验证 PHP 版本、扩展是否加载:

php -r "phpinfo();"

注意细节:

  • 引号必须是双引号(Windows cmd 下可用双引号;PowerShell 需转义或改用单引号包裹,但更推荐用 cmd 或 WSL)
  • -r 参数表示“运行代码”,不隐式包含 ,所以必须自己写完整语句
  • 如果只想看某部分(比如已加载的扩展),可加过滤:php -r "phpinfo();" | grep "gd"

php -a 交互模式执行(适合调试多行逻辑)

进入交互式 PHP 环境后,可以逐行输入并执行,适合临时测试变量或函数行为:

立即学习PHP免费学习笔记(深入)”;

php -a

然后输入:

快剪辑

快剪辑

国内⼀体化视频⽣产平台

下载

> phpinfo();

回车即输出。退出按 Ctrl+D(Linux/macOS)或 Ctrl+Z(Windows)。注意:

  • 某些 PHP 编译版本禁用了交互模式(报错 Interactive mode enabled but readline extension is not available),此时只能用 -r
  • php -a 默认不加载所有配置(如 php.ini 中的 disable_functions 可能拦掉 phpinfo),实际行为以 php --ini 显示的配置路径为准

输出到文件再查看,避免终端刷屏

默认输出内容很长,终端可能截断或难以检索。用重定向保存成 HTML 或文本更实用:

php -r "phpinfo();" > phpinfo.html

或生成纯文本(去掉 HTML 标签,方便 grep):

php -r "ob_start(); phpinfo(); echo strip_tags(ob_get_clean());" > phpinfo.txt

关键点:

  • phpinfo() 默认输出 HTML,直接重定向为 .html 文件后可用浏览器打开,格式清晰
  • 若服务器禁用了 phpinfo()(常见于生产环境),disable_functions 配置里含 phpinfo,这时命令行也会失败,需检查 php -i | grep disable
  • CLI 和 Web SAPI 的 php.ini 往往不同,php --iniphp -i 输出的配置路径要核对清楚

真正容易被忽略的是:命令行 PHP 和 Web 用的不是同一份配置,phpinfo() 输出的内容可能完全不同——查扩展是否启用、时区、内存限制前,先确认你查的是哪个环境。

https://www.php.cn/faq/1988139.html

发表回复

Your email address will not be published. Required fields are marked *