未捕获的 ErrorException:preg_match_all():JIT 编译失败:没有更多内存

Uncaught ErrorException: preg_match_all(): JIT compilation failed: no more memory

我刚刚将 macOS 上的 PHP 从 7.2 升级到 7.3,在我的一个项目上尝试 运行 composer update 时,出现错误;

PHP Fatal error:  Uncaught ErrorException: preg_match_all(): JIT compilation failed: no more memory

我 运行 搜索了几次 Google;看起来这个问题是新的,我在网上找不到任何工作文档。

这是与 PHP 7.3 和 Composer 相关的问题吗?如果是这样,我该如何解决?提前感谢您的帮助。

如果 pcre.jit = 0 pcre.jit=0 pcre.jit = 在 php.ini 中关闭,无效,试试这个:

我想你是通过自制软件安装的 php 7.3。

如果是这样,在/usr/local/etc/php/7.3/conf.d中创建一个zzz-myphp.ini,内容如下:

; My php.ini settings
; Fix for PCRE "JIT compilation failed" error
[Pcre]
pcre.jit=0

如果这也不起作用,请卸载 php7.3 并安装 7.2 或 7.1

brew uninstall php@7.3

编辑以下文件

/usr/local/etc/php/7.3/php.ini

查找并更改 pcre.jit 变量

pcre.jit=0

如果问题仍然存在

尝试重新启动计算机。