выводит как у вас, только с нотисом предыдущим.
ЗЫ. в том то и прикол, что
можно обработать как ваш вариант number_format(str_replace(" ", "", $ThisStr), 0, '', ''); , так и мой через round.
фишка в том, что в базу криво влазит.
$data->sheets[0]['cells'][$i][10] = 7 638,78;
могу привести пример как
php echo number_format(str_replace(" ", "", $data->sheets[0]['cells'][$i][10]), 0, '', '') дает 7638
text
UPDATE table SET cost = '".number_format(str_replace(" ", "", $data->sheets[0]['cells'][$i][10]), 0, '', '')."';
а в ячейку входит только "7".
text
# php -v
PHP 5.4.4-14+deb7u5 (cli) (built: Oct 3 2013 09:24:58)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
text
# mysql -v
Server version: 5.5.31-0+wheezy1-log (Debian)
первоначальный данные поступают в массив уже в нужной кодировке.
text
$data->setOutputEncoding('UTF-8');
может еще какие условия мускулю задать для входа данных?