以phpinfo()中“Loaded Configuration File”路径为准——它才是Web实际加载的php.ini;小皮面板CLI与Web常使用不同配置文件,需分别用php --ini和phpinfo()确认,改后必须重启PHP服务而非仅Web服务器。

小皮面板(phpStudy)找不到 php.ini 文件,不是文件丢了,而是你没找对位置——它根本不在你默认猜的 C:\Windows 或 D:\phpstudy_pro\www 下。关键得让 PHP 自己告诉你它在用哪个配置文件。
先确认当前实际加载的 php.ini 路径
小皮面板里 CLI(命令行)和 Web(浏览器访问)用的 php.ini 往往是两个文件,不能混着改:
- 打开小皮面板,点击右上角“终端”或直接进 D:\phpstudy_pro\Extensions\php\phpX.X.Xnts\(X.X.X 是你当前启用的 PHP 版本号,比如 php8.2.12nts),运行:
php --ini —— 看 Loaded Configuration File 行,如果显示 (none),说明 CLI 没加载任何配置; - 在网站根目录(如 D:\phpstudy_pro\WWW)新建一个 info.php,内容写
,用浏览器访问 http://127.0.0.1/info.php,搜索 Loaded Configuration File —— 这个路径才是 Web 请求真正读取的 php.ini。
常见真实路径位置(以新版小皮为准)
多数情况下,小皮面板的 php.ini 并不放在系统级目录,而是在 PHP 版本子目录内:
- D:\phpstudy_pro\Extensions\php\php8.2.12nts\php.ini
- D:\phpstudy_pro\Extensions\php\php7.4.33nts\php.ini
- 注意后缀 nts(Non-Thread-Safe)是 Windows 下小皮默认使用的版本,别错进 ts 目录;
- 如果该目录下只有 php.ini-development 或 php.ini-production,就把其中一个复制并重命名为 php.ini(推荐用 production)。
改完不生效?检查三个关键点
改了 php.ini 却发现 phpinfo() 里的值没变,大概率是以下原因:
- 你改的是 CLI 的 php.ini(比如 D:\phpstudy_pro\Extensions\php\php8.2.12nts\php.ini),但网站走的是 FPM 模式——小皮新版默认用 Nginx + PHP-FPM,FPM 的配置可能独立存在,路径类似:
D:\phpstudy_pro\Extensions\php\php8.2.12nts\php-fpm.ini 或 php-fpm.conf 中指定的 ini; - 扩展路径没配对:比如启用了 mysqli,但 extension_dir 指向错误,应明确写成:
extension_dir = "D:\phpstudy_pro\Extensions\php\php8.2.12nts\ext"; - 改完没重启服务:必须在小皮面板中,对当前站点或整个 PHP 服务点“重启”,不能只刷新网页或重启 Apache/Nginx 单独模块。
实在找不到?用最稳的补救方式
不依赖记忆或猜测,按这个顺序操作:
- 打开小皮面板 → “其他选项菜单” → “打开配置文件” → “php.ini” —— 这个菜单项会自动定位到 Web 当前加载的那个文件;
- 如果菜单灰掉或报错,说明 PHP 还没成功加载配置,就去对应 PHP 版本目录下手动创建:
复制 php.ini-production → 粘贴并重命名为 php.ini → 用记事本或 VS Code 打开,确认 display_errors = On、extension_dir 正确、需要的扩展如extension=mysqli前面没加分号; - 保存后,在小皮面板中停止再启动一次 PHP 服务(不是仅重启 Web 服务器),然后刷新 info.php 页面验证。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











