对不起,问这个,但我不能找到一个解决方案,得到这个 - )> 7000〜7000PHP转换格式INT为int
我使用INTVAL(和number_format(),但它只是给我不7 7000
$myVal = '7,000';
echo intval($myVal);
这将返回7
上也是如此number_format()
我究竟做错了什么?
对不起,问这个,但我不能找到一个解决方案,得到这个 - )> 7000〜7000PHP转换格式INT为int
我使用INTVAL(和number_format(),但它只是给我不7 7000
$myVal = '7,000';
echo intval($myVal);
这将返回7
上也是如此number_format()
我究竟做错了什么?
intval()
由于逗号而无法使用您所使用的字符串。您可以通过使用str_replace()
,然后调用intval()
像这样删除逗号:
echo intval(str_replace(',', '', $myVal))
如果你正在使用PHP> = 5.3(或安装了“国际”扩展,至少有1.0版本),那么你也可以使用NumberFormatter
类来解析特定于语言环境的数字。
$myVal = '7,000';
$nf = new NumberFormatter("en_EN", NumberFormatter::DECIMAL);
var_dump($nf->parse($myVal, NumberFormatter::TYPE_INT32));
# output: int(7000)
如果您使用的PHP版本低于5.3,您最好使用@KevinS。解。
这是一个更好的答案,谢谢! – thefreeman
您的php安装是否已经本地化到一个国家,','是小数点分隔符? – gcochard
请查看@Greg所说的本地化,顺便说一下,您使用的是Windows吗? –