32-битный без знака int php - PullRequest
3 голосов
/ 26 марта 2010

Кто-нибудь знает класс / библиотеку / и т.д. что может симулировать 32-битные целые числа без знака на 32-битной платформе в PHP? Я портирую C lib в PHP, и он использует много целых чисел, которые больше, чем максимум для 32-битного со знаком int.

Ответы [ 3 ]

2 голосов
/ 26 марта 2010

Попробуйте BC Math Library , которая «поддерживает числа любого размера и точности, представленные в виде строк».

Удачи!

0 голосов
/ 26 марта 2010

Тебе это действительно нужно? php преобразуется в float, если вы выходите за пределы целого.

http://www.php.net/manual/en/language.types.integer.php

var_dump(PHP_INT_MAX);
$int = PHP_INT_MAX;
var_dump($int + $int);
0 голосов
/ 26 марта 2010

Почему ты не можешь написать

  modulo(a+b,2^32)

или его эквивалент в PHP для a, b, представляющего собой "целое число без знака", которое вы пытаетесь добавить "целое число без знака", аналогично для вычитания, умножения, деления, ...? Конечно, вы можете скрыть это в функции add_unsigned, чтобы сделать код немного понятнее.

...