I had a big problem using magento (country Italy, Currency Euro) with the string representing the price of a product.
Sometimes (yes the issue will occur on a non deterministic basis) an Exception was thrown beacause the function toCurrency (lib/Zend/Currency.php) receives as value a float number like 1,200000000 (so the field is seen as NON numeric and an exception is thrown)
I’m sure in the admin page I inserted 1.2 and also in the db table is stored the value 1.2
The only trick that works for me is to put the line
$value = str_replace(’,’ , ‘.’ , $value);
before the check with is_numeric (lib/Zend/Currency.php:160)
I know this is a very dirty hack, but is the only way I found to solve the issue.
I ran Magento 1.2.1 on a gentoo linuxbox with MySQL 5.0.51, apache 2.2.10 and php 5.2.8
Has anyone had the same (or similar) problem?