在 windows 10 上修改 php 8.1.30 内存限制需先通过 phpinfo() 或 php --ini 确认正确的 php.ini 路径,再将 memory_limit 设为 256m 或 512m(禁用 -1),注意单位大小写不敏感但不可写 512mb,最后重启 apache/php-fpm 服务或直接运行 cli 验证。

在 Windows 10 上搭建 PHP 8.1.30 服务器(如配合 Apache 或 Nginx + PHP-FPM)时,修改内存限制主要通过编辑 php.ini 文件实现。该设置直接影响脚本能否处理大数组、大量数据库结果或文件解析等操作,设得太低会报 Allowed memory size exhausted 错误,设得太高又可能掩盖内存泄漏问题。
确认并编辑正确的 php.ini 文件
PHP 在 Windows 下可能有多个 php.ini 文件(CLI、Apache 模块、FPM 各自独立)。你必须改对正在使用的那个:
- 新建一个
info.php文件,内容为<?php phpinfo(); ?>,用浏览器访问它,查找 Loaded Configuration File 对应的路径(例如C:\php\php.ini或C:\xampp\php\php.ini); - 若使用命令行运行脚本(如
php script.php),运行php --ini查看 CLI 加载的配置路径; - 打开该文件,搜索
memory_limit—— 默认通常是128M或256M。
修改 memory_limit 值并保存
将原行(如 memory_limit = 128M)改为所需值,常见合理设置有:
-
memory_limit = 256M(中小项目常规提升) -
memory_limit = 512M(处理 Excel 导入、图片批量压缩、大型 CMS 后台) - 不建议设为
-1(无限制),仅限本地调试且确认无内存泄漏时临时使用
注意单位大小写不敏感(M、m、MB 均可),但不要写成 512MB(PHP 会解析失败,回退为默认值)。
重启对应服务使配置生效
修改后必须重启 PHP 运行环境,否则更改不会加载:
- 若用 Apache(如 XAMPP/WAMP):重启 Apache 服务(可通过控制面板或命令
httpd -k restart); - 若用 Nginx + PHP-FPM:重启
php-fpm服务(Windows 下通常为php-fpm.exe进程,需手动结束再启动,或使用 NSSM 等工具托管为服务); - 若仅用于 CLI:无需重启,下次执行
php xxx.php即自动读取新配置。
验证是否生效
在任意 PHP 脚本中加入以下代码运行查看:
<?php echo ini_get('memory_limit'); ?>
输出应与你设置的值一致(如 256M)。也可再次访问 info.php 页面确认 memory_limit 行已更新。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











