从我的数据库中,我得到一个小数点,例如 25.30。
在 PHP 中,我将这样的小数乘以 25.30 * 6。结果是 151,8,但带有逗号。
问题是结果给我一个逗号而不是像 151.8 这样的点。
有没有办法解决这个问题并得到一个点的结果?
从我的数据库中,我得到一个小数点,例如 25.30。
在 PHP 中,我将这样的小数乘以 25.30 * 6。结果是 151,8,但带有逗号。
问题是结果给我一个逗号而不是像 151.8 这样的点。
有没有办法解决这个问题并得到一个点的结果?
尝试var_dump(localeconv());
,您可能会看到decimal_point
关键是,
(如果 PHP5.3>=)尝试locale_set_default('en_US');
或使用(不推荐使用的)setlocale
函数setlocale
:
setlocale(LC_NUMERIC, 'en_US');
//or custom:
$locale = localeconv();
$locale['decimal_point'] = '.';
$setlocale(LC_ALL, $locale);
有关Locale
课程的更多详细信息,请参见使用和获取
的其他方法。setlocale
localeconv
一个骇人听闻的快速修复也可能是:
$formatted = sprintf('%.1f',25.30 * 6);
但我建议您设置应该设置的语言环境。另请注意,在 Windows 上,setlocale(LC_ALL)
使用系统区域设置,如文档中所述:
在 Windows 上, setlocale(LC_ALL, '') 从系统的区域/语言设置(可通过控制面板访问)设置区域设置名称。
你想格式化你的号码。从手册:
string number_format ( float $number , int $decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )
因此,例如,在您的情况下,这将是:
print number_format($number, 1, '.', ',');