如何在64位PHP安装上使用32位整数?

Yoh*_*art 4 php int

因为生产服务器是32位而我的开发机器是64位(我正在运行Kubuntu 12.04 64位),因此我的代码在转移到生产时遇到了问题.我的问题是.是否可以在不安装23位版本的PHP的情况下将int强制为32位?允许我选择max int值的那个或库

Jon*_*art 9

整数是该平台上指针的大小.(32位PHP - > 32位整数.64位PHP - > 64位整数).

请注意,当整数运算溢出时,变量变为浮点数.在PHP文档解释了所有的这口井.

我不确定你在代码中做了什么会导致你关心整数的大小.但是,如果您只关心32位的值,则可以始终屏蔽低32位:

$val = $something & 0xFFFFFFFF;
Run Code Online (Sandbox Code Playgroud)

  • 一种情况是例如计算CRC32,而不使用CRC32中的构建,因为在我的情况下,我需要一次一个字节.在这里,您将乘以相当大的整数,并且您希望它们的行为类似于带符号的32位整数,即使在64位系统上也是如此. (3认同)