使用PHPCassa的PHP中的雪花键算法

use*_*680 6 php cassandra phpcassa

可能重复:
如何在PHP上使用64位整数?

是否可以使用64位长整数作为使用PHPCassa的Cassandra中的密钥?

例如,

$pool = new ConnectionPool('main', array("127.0.0.1")); 
$table = new ColumnFamily($pool, 'messages'); // ColumnFamily 
$table->insert("5601379860409749867", array("sampleKey" => "sampleValue)); 
Run Code Online (Sandbox Code Playgroud)

每次我执行插入操作时,键都会得到0.在此表中,key_validation_class是LongType.

Gre*_*reg 0

这完全取决于服务器的操作系统功能,而不是 PHPCassa 的限制。

本机 64 位整数需要 64 位硬件和 64 位版本的 PHP。

在 32 位硬件上:

$ php -r 'echo PHP_INT_MAX;'
2147483647
Run Code Online (Sandbox Code Playgroud)

在 64 位硬件上:

$ php -r 'echo PHP_INT_MAX;'
9223372036854775807
Run Code Online (Sandbox Code Playgroud)