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