对返回 0 的 XML 结果的操作


operations on xml results returning 0

我的主页遇到了问题,所以我做了一个测试页面来找到问题。我正在通过 XML 获取游戏的小时数,任何玩超过 .1 但少于 1 小时的游戏我都试图乘以 60。

它捕获数字,但它为它们返回 0。大于 1 的任何值都不会像预期的那样通过 if。

为什么它没有正确执行操作?我该如何解决这个问题?

$games = $gamespage->games;
$hoursplayed = 0;
    foreach($games->game as $game)
    {
    $hoursplayed = $game->hoursOnRecord;
    if ($hoursplayed < 1 && $hoursplayed >= .1) {
    $hoursplayed = $hoursplayed * 60; }
    echo $game->name, "<br />";
    echo $hoursplayed, "<br /><br />";
    } 

您可能需要先强制转换值,否则这些值是对象,并且不能在 PHP 中将对象相乘:

$hoursplayed = 0;
foreach ($gamespage->games->game as $game)
{
    $hoursplayed = (float) $game->hoursOnRecord;
    if ($hoursplayed < 1 && $hoursplayed >= .1) 
    {
         $hoursplayed = $hoursplayed * 60; 
    }
    echo $game->name, "<br />", $hoursplayed, "<br /><br />";
}