这是SimpleXMLElement的打印:
SimpleXMLElement Object
(
[Amount] => 6.00
)
这就是我在做的事情:
$amount = (string) $xml->Amount;
echo $amount;
我可以在屏幕上看到 6.00 而没有任何问题,但即使我正在使用强制转换,函数仍会将此值视为0(false)。我仔细检查了如下:
$amount = $xml->Amount;
var_dump($amount);
// Returns » object(SimpleXMLElement)#189 (1) { [0]=> string(4) "6.00" }
$amount = (string)$xml->Amount;
var_dump($amount);
// Returns » string(4) "6.00"
$amount = (string)$xml->Amount[0];
var_dump($amount);
// Returns » string(4) "6.00"
它应该工作,但它没有,我不知道为什么。在施法后,我立即使用$ amount来计算一个百分比值,但我总是以$ amount和$ percent结束等于0(零)。
编辑。这是代码的请求部分:
$amount = (string) $xml->Amount;
$amount = $amount / $rate;
$amount = number_format($amount, 2);
$percentage = ($amount * (1 / 100)) + 0.10;
$percentage = $percentage / $rate;
$percentage = number_format($percentage, 2);
P.S。 $ rate是另一个100%罚款,正确且始终存在的变量。它不是来自SimpleXMLElement。