我需要在 HHVM 运行时和传统的 PHP 运行时运行给定的包。我的问题:如果当前环境是HHVM,有没有办法检查以编程方式?像这样:
<?php
if(running_on_hhvm()) {
// do hhvm compatible routine
}
else {
// do normal routine
}
答案 0 :(得分:34)
您可以使用特定于HHVM的常量HHVM_VERSION
:
if (defined('HHVM_VERSION')) {
// Code
}
如果需要,您可以将它放在自己的功能中。
function is_hhvm() {
return defined('HHVM_VERSION');
}
if (is_hhvm()) {
// Code
}
答案 1 :(得分:-2)
某些旧版本的HHVM未定义HHVM_VERSION。它们都在phpinfo()中输出“HipHop”。
function is_hhvm(){
ob_start();
phpinfo();
$info=ob_get_contents();
ob_end_clean();
return ($info=='HipHop');
}