Проблема Zend Db с плавающей запятой

У меня есть таблица MySQL со структурой: float(10,2)

Например, я вставляю строку.

$value = array('price' => '13539.51');
$db->insert($value);

Когда я проверяю эту строку с помощью phpmyadmin, все в порядке. Но когда я читаю эту строку с помощью Zend Db, значение цены выглядит так: «13539,509765625». Как я могу решить эту проблему.

$select = $db->select();
$select->where('id = ?' 1);
echo $db->fetchRow($select)->price;
//13539.509765625

person Can Aydoğan    schedule 07.10.2010    source источник
comment
Очень странно. Что отображается, когда вы делаете var_dump для $db-›fetchRow($select)-›price?   -  person Maxence    schedule 08.10.2010


Ответы (1)


Я думаю, что ваша проблема связана с типом данных, который вы выбрали для своего столбца, а не с Zend_Db. Возможно, вы захотите изменить его на DECIMAL (10,2).

http://dev.mysql.com/doc/refman/5.1/en/numeric-types.html

Здоровья, Ангел

person mapsi    schedule 08.10.2010
comment
Да по деньгам лучше чем поплавок. - person Maxence; 08.10.2010