игроков:
- 64-разрядная версия Linux с
- php 5 (ZendFramework 1.10.2)
- PostgreSQL 8,3
- Учение 1.2
Через клиент Flash / Flex я получаю 8-байтовое целочисленное значение.
поле в базе данных является BIGINT (8 байт)
PHP_INT_SIZE показывает, что система поддерживает 8-байтовое целое число.
распечатка значения в коде как есть и как intval () приводит к этому:
Plain: 1269452776100
intval: 1269452776099
Ошибка округления поплавка?
но то, что действительно сводит меня с ума, это
ОШИБКА: неверный синтаксис ввода для целого числа: "1269452776099.000000" '
когда я пытаюсь использовать его в запросе. как:
Doctrine_Core::getTable('table')->findBy('external_id',$external_id);
или
Doctrine_Core::getTable('table')->findBy('external_id',intval($external_id));
Как я должен справиться с этим? или как я могу дать доктрине число с плавающей запятой, которое она должна использовать в поле bigint?
Любая помощь очень ценится!
ТИА
EDIT:
от модели:
$this->hasColumn('external_id', 'integer', 8, array(
'type' => 'integer',
'length' => 8,
'fixed' => false,
'unsigned' => false,
'notnull' => false,
'primary' => false,
));
Поле базы данных - bigint 8 байтов.
EDIT2:
http://bugs.php.net/bug.php?id=48924 кажется корень проблемы