有谁知道在PHP中检查脚本是以32位还是64位运行的方法?目前我使用的是PHP 5.3.5。
理想情况下,我想写一个函数,这样我的代码就可以看起来像这样:
if( is_32bit() === true ) {
do_32bit_workaround();
}
do_everything_else();有人有什么想法吗?
发布于 2011-03-25 02:59:11
检查PHP_INT_SIZE常量。它将根据寄存器的大小而有所不同(即32位与64位)。
在32位系统中,PHP_INT_SIZE应该是4,对于64位系统,它应该是8。
有关更多详细信息,请参阅http://php.net/manual/language.types.integer.php。
发布于 2016-03-30 07:59:45
你可以像这样写一个函数:
function is_32bit(){
return PHP_INT_SIZE === 4;
}然后,您可以使用您发布的示例代码:
if ( is_32bit() ) {
do_32bit_workaround();
} else {
do_everything_else();
}发布于 2019-11-19 17:17:58
下面是一个可以从控制台使用的示例
对于Windows:
php -r "echo (PHP_INT_SIZE == 4 ? '32 bit' : '64 bit').PHP_EOL;" && php -i | findstr Thread对于Linux
php -r "echo (PHP_INT_SIZE == 4 ? '32 bit' : '64 bit').PHP_EOL;" && php -i | grep Thread输出示例:
64 bit
Thread Safety => disabledhttps://stackoverflow.com/questions/5423848
复制相似问题