PHP安装成功需同时满足CLI可用、Web服务器能解析.php文件并输出动态内容:运行php -r验证CLI环境,创建info.php用phpinfo()确认Web集成及配置生效。

PHP 安装后怎么快速验证是否成功
直接在命令行运行 php -v 是最基础的检查,但只能确认 PHP 解释器存在且能启动,不能验证 Web 服务(如 Apache/Nginx)是否真正集成了 PHP。真正的“成功”必须包含:CLI 可用 + Web 服务器能解析 .php 文件 + 能输出动态内容。
用 php -r 快速测试 CLI 环境
跳过写文件、查路径等步骤,一条命令完成语法和基础函数可用性验证:
php -r "echo 'PHP OK: ' . date('Y-m-d') . PHP_EOL;"
如果输出类似 PHP OK: 2024-06-15,说明:
– PHP 二进制可执行
– 内置函数(如 date()、PHP_EOL)正常
– 没有因缺少扩展(如 date.timezone 未设)导致致命错误
- 若报错
Warning: date(): It is not safe to rely on the system's timezone settings,说明php.ini中未设置date.timezone,需补上(如date.timezone = Asia/Shanghai) - 若提示
Command 'php' not found,说明未加入系统 PATH,需手动添加 PHP 安装路径(如 Windows 的C:\php,macOS/Linux 的/usr/local/bin)
建一个最小 info.php 测试 Web 集成
在 Web 服务器的根目录(如 /var/www/html 或 C:\Apache24\htdocs)下新建文件:
立即学习“PHP免费学习笔记(深入)”;
然后通过浏览器访问 http://localhost/info.php(确保 Apache/Nginx 已启动)。重点看三处:
-
Loaded Configuration File显示的是实际生效的php.ini路径,不是安装包自带的模板 -
Server API应为Apache 2.0 Handler或FPM/FastCGI,而非CLI—— 这才是 Web 集成正确的标志 - 滚动到底部,检查是否有关键扩展被禁用(如
mysqli、pdo_mysql),它们不会影响phpinfo()显示,但后续连数据库会报错
为什么不用 echo "hello" 就算完
只写 并不保险,因为:
- Web 服务器可能把
.php当纯文本返回(即源码直接显示),说明 PHP 模块根本没加载或 MIME 类型未注册 - 即使显示了 hello,也可能是缓存/CDN 返回的旧响应,而非实时执行结果
- 无法暴露配置级问题,比如
display_errors = Off导致后续脚本出错却静默失败 -
phpinfo()是唯一能一次性暴露全部环境状态(版本、扩展、路径、编译参数)的内置手段
真正容易被忽略的是:改完 php.ini 后,Apache 需要 sudo systemctl reload apache2(Linux)或重启服务(Windows),而 PHP-FPM 用户必须单独重启 php-fpm 进程,否则配置永远不生效。











