Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 大数位运算符_Php_Mysql - Fatal编程技术网

Php 大数位运算符

Php 大数位运算符,php,mysql,Php,Mysql,是否有方法检查大于2147483648的值? 我必须使用6.73297395398192e212 2^707之前的数字。 数据以浮点形式存储在mysql数据库中 可能我只是使用了错误的搜索词,或者没有一个好方法。使用8个字节,而您显然无法存储707位,我假设您正在尝试这样做。它可以存储一个1e308的值,该值的精度为较低的数字,这使得它对于存储要对其执行逐位操作的数据来说是一个糟糕的选择。对于8字节的按位操作,可以使用bigint 由于MySQL 8,MySQL支持任意长度,所以您应该以这种方式

是否有方法检查大于2147483648的值? 我必须使用6.73297395398192e212 2^707之前的数字。 数据以浮点形式存储在mysql数据库中

可能我只是使用了错误的搜索词,或者没有一个好方法。

使用8个字节,而您显然无法存储707位,我假设您正在尝试这样做。它可以存储一个1e308的值,该值的精度为较低的数字,这使得它对于存储要对其执行逐位操作的数据来说是一个糟糕的选择。对于8字节的按位操作,可以使用bigint

由于MySQL 8,MySQL支持任意长度,所以您应该以这种方式存储您的值——无论如何,位数组基本上是一个二进制字符串。您不能将其视为数字,例如,将其与整数相加或相乘


对于早期的MySQL版本,二进制字符串上的位操作限制为8字节。您仍应将位存储为二进制字符串,以便轻松升级,并编写一个小函数来执行操作,例如按字节方式。

?其中字段>2147483648no,例如$a=1$b=2$c=4$d=8$e=16$f=32;//设置了32、16、4,如果设置了52和1回波1,则将进行回波;如果设置了52&2回波2;如果设置了52&4回波4;如果设置了52&8回波8;如果设置了52和16回波16;如果设置了52和32 echo 32;我不明白你刚才说的话。所有这些和检查数字的范围有什么关系?我不认为你能做你想做的事情,不管怎样,用浮点数都不行。浮点数的位表示形式与整数不同;它们分为两部分:尾数和指数,两者都没有您所要求的位精度。您可能正在寻找的是一个bigint字段;看看@datCake你想做什么?在如此大的数字上使用位运算符试图解决的问题是什么?