php.ini路径由phpinfo()中“Loaded Configuration File”字段指定,extension_dir路径在phpinfo()中搜索该关键词可得,“Scan this dir for additional .ini files”显示额外配置目录,扩展加载状态需在phpinfo()中搜索扩展名验证。

如果您需要确定 PHP 的配置文件(php.ini)和扩展模块(extensions)所在的具体路径,可以通过 phpinfo() 函数输出的详细信息进行定位。以下是获取这些关键路径信息的操作步骤:
一、启用并访问 phpinfo() 页面
phpinfo() 会以网页形式展示当前 PHP 环境的全部配置详情,其中包含与路径相关的多个核心字段。需确保该函数可被执行且页面可被正常访问。
1、在 Web 服务器的文档根目录下新建一个名为 info.php 的文件。
2、在该文件中写入以下内容:。
立即学习“PHP免费学习笔记(深入)”;
3、通过浏览器访问 http://localhost/info.php(或对应域名路径)加载该页面。
二、查找 php.ini 文件路径
phpinfo() 输出页顶部的 “Loaded Configuration File” 行明确显示了当前生效的主配置文件位置。若该行显示为 “none”,说明未加载任何 php.ini 文件。
1、在 phpinfo 页面中按 Ctrl+F 搜索关键词 Loaded Configuration File。
2、在其右侧查看完整绝对路径,例如:/etc/php/8.1/apache2/php.ini 或 C:\xampp\php\php.ini。
3、若值为空或显示 “none”,则需检查是否存在 php.ini-development 或 php.ini-production 文件,并重命名为 php.ini 后重启 Web 服务。
三、定位扩展模块(extension_dir)目录
extension_dir 是 PHP 加载 .so(Linux/macOS)或 .dll(Windows)扩展时默认搜索的目录路径,该值由 php.ini 中的 extension_dir 指令设定,也可在 phpinfo() 中直接查得。
1、在 phpinfo 页面中搜索关键词 extension_dir。
2、确认其对应值是否为绝对路径,例如:/usr/lib/php/20210902 或 C:\php\ext。
3、若路径不存在或权限不足,PHP 将无法加载扩展;此时应手动创建该目录或将扩展文件复制至此路径。
四、识别额外的 ini 文件加载路径
PHP 支持从多个目录自动加载额外的 .ini 配置片段(如用于启用扩展),这些路径由 “Scan this dir for additional .ini files” 字段标明,通常位于 phpinfo() 页面靠前位置。
1、在 phpinfo 页面中搜索关键词 Scan this dir for additional .ini files。
2、记录该路径,例如:/etc/php/8.1/cli/conf.d 或 C:\xampp\php\extras\php\conf.d。
3、进入该目录,检查是否存在以 .ini 结尾的文件,它们可能包含 extension=xxx.so 或 zend_extension=yyy.dll 等指令。
五、验证扩展实际加载状态
即使 extension_dir 和 ini 文件路径正确,扩展仍可能因依赖缺失或语法错误而未被加载。phpinfo() 中 “Registered PHP Streams” 和各扩展独立区块可反映真实加载结果。
1、在 phpinfo 页面中搜索目标扩展名,例如:mysqli、pdo_mysql 或 opcache。
2、若搜索无结果,说明该扩展未启用;此时应检查对应 .ini 文件中是否取消了分号注释,例如将 ;extension=mysqli 改为 extension=mysqli。
3、修改后必须重启 Web 服务器(如 Apache 或 Nginx)及 PHP-FPM 进程,更改才能生效。











