近日学习一位老师的课件,其中有一个:$tel = intval($tel),反复输出为:2147483647
反复修改数据库的字段格式,都不行。后来发现原来intval这个函数在:
PHP的32位版本:
整数可以从-2,147,483,648到2,147,483,647(~20亿)
PHP的64位版本:
整数可以从-9,223,372,036,854,775,808到9,223,372,036,854,775,807(〜±9 十亿分之一)
----------------------------
顺便说一下如何判断自己的php是不是32的,跟操作系统没关系,我的是win1064位,但是php还是32位的。判断如下:
(判断1)调用:phpinfo();
找一下Architecture,如果对应的值为x86则是 32 位的,反之则为 64 位
(判断2)
可以输出一个超过42亿的整数,如 var_dump(12345678900);
如果类型为 float ,表示PHP是32位的,无法支持超过42亿的整数。
如果类型为int,表示PHP是64位的,可以支持超过42亿的整数。
-------------------------
以上判断方法转自网络,仅供参考~~