我有一个像$ amount ='1,120.01'的数字,我需要与一个整数进行比较(例如if($ amount< 300){do this}}。但是由于某些原因,php会看到这样的数字(1,120.01或300.00) )有一个较低的值,所以我想知道我应该如何格式化它。
答案 0 :(得分:0)
您可以使用此代码转换字符串...从ABove
https://stackoverflow.com/a/14482490/627868 Ksg回答。
<?php
$string_number = '1,120.01';
$number = (str_replace(',','',$string_number));
print $number;
?>
答案 1 :(得分:0)
您可以从金额中删除逗号并进行比较
if(((float)str_replace(',','',$amount)) < 300)
答案 2 :(得分:0)
你可以尝试
$amount = '1,120.01';
$amount = format($amount);
if ($amount < 300) {
echo $amount, " less than 300", PHP_EOL;
} else {
echo $amount, " grater than 300", PHP_EOL;
}
输出
1120.01 grater than 300
使用的功能
function format($number) {
$places = strlen(substr(strrchr($number, "."), 1));
$number = filter_var($number, FILTER_SANITIZE_NUMBER_INT);
return $number / pow(10, $places);
}