2012-04-26 1 views
6

Можно создать дубликат:
how to have 64 bit integer on PHP?алгоритм ключ Снежинка в PHP с помощью PHPCassa

Можно ли использовать 64-разрядное целое число в качестве ключа в Кассандре с помощью PHPCassa?

Например,

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

Каждый раз, когда я делаю вставку, я получаю 0 для ключа. В этой таблице ключ_validation_class - LongType.

+0

Если PHP является версия 32 бита, я думаю, вы просто не можете. Переключитесь на 64-битную систему или дождитесь PHP-метода (может быть длиннее ^^) – shkschneider

+1

64-разрядный целочисленный вопрос похож на [Как иметь 64-разрядное целое число в PHP] (http: // stackoverflow .com/questions/864058/how-to-have-64-bit-integer-on-php) и [Как генерировать случайное 64-битное значение как десятичную строку] (http://stackoverflow.com/questions/5301034/ как к генерации случайной-64-битовой величина, как-десятичной-строка). – Stennie

ответ

0

Это полностью зависит от возможностей операционной системы вашего сервера, а не от ограничений PHPCassa.

Собственные 64-разрядные целые числа требуют 64-разрядного оборудования и 64-разрядной версии PHP.

На 32-разрядном оборудовании:

$ php -r 'echo PHP_INT_MAX;' 
2147483647 

На 64-разрядном оборудовании:

$ php -r 'echo PHP_INT_MAX;' 
9223372036854775807