如何检测 PHP JIT 是否启用

检测 PHP 是否使用 JIT 编译以及从运行脚本启用 JIT 的最简单方法是什么?



慕妹3146593
浏览 247回答 3
3回答

萧十郎

您可以通过调用直接查询 opcache 设置opcache_get_status():opcache_get_status()["jit"]["enabled"];或在以下位置执行查找php.ini:ini_get("opcache.jit")这是一个整数(以字符串形式返回),其中最后一位数字表示 JIT 的状态:0 - don't JIT1 - minimal JIT (call standard VM handlers)2 - selective VM handler inlining3 - optimized JIT based on static type inference of individual function4 - optimized JIT based on static type inference and call tree5 - optimized JIT based on static type inference and inner procedure analyses来源: https: //wiki.php.net/rfc/jit#phpini_defaults

慕妹3242003

opcache_get_status()当 JIT 被禁用时将不起作用并会抛出致命错误。echo (function_exists('opcache_get_status')       && opcache_get_status()['jit']['enabled']) ? 'JIT enabled' : 'JIT disabled';我们必须在文件中对 JIT 进行以下设置php.ini。zend_extension=opcache.soopcache.enable=1opcache.enable_cli=1 //optional, for CLI interpreteropcache.jit_buffer_size=32M //default is 0, with value 0 JIT doesn't workopcache.jit=1235 //optional, default is "tracing" which is equal to 1254

MMTTMM

php -i | grep "opcache"checking:opcache.enable => On => Onopcache.enable_cli => On => Onopcache.jit => tracing => tracing
打开App,查看更多内容
随时随地看视频慕课网APP