我有两个价值观:
$currentValue
总是有两位小数(可以是 .00)。
$usersValue
可以是整数,也可以是小数点后两位。
我遇到的问题是这些都是字符串(示例):
var_dump($currentValue) = string(6) "100.50"
var_dump($usersValue) = string(5) "52.50" || string(2) "52"
现在我需要对这些做一些逻辑:
if($usersValue > $currentValue) // Is users value greater than the current value
if($usersValue < $currentValue) // Is users value less than the current value
if($usersValue == $currentValue) // Is the users value equal to the current value
在我看来,我认为这两个变量应该始终声明为浮点数,因为$currentValue
永远是浮点数,那么你可以做数学......?
所以我的问题:
- 如何正确地将字符串转换为浮点数?例如:如果我的
$currentValue = string(8) "2,061.14"
, 和我做$newCurrentValue = (float)$currentValue
,$newCurrentValue = string(1) "2"
。不知道那里发生了什么? - 如果是
$usersValue = string(2) "52"
,我该如何转换$usersValue = float(52.00)
呢? - 如果所有变量都是浮点数,我是否能够执行上述所需的逻辑?从我的测试中,我发现
<
and>
运算符可以工作,但不是==
......?
这里真的很困惑,谢谢。