0

我有两个变量:

$wh_odds_attrib
$lad_odds_attrib

如果我对它们执行 var_dump,我会得到

string(4) "1.36"
string(4) "2.00"

分别。

我想在 if 语句中使用这些 vairbales,但是如果我这样做,它将评估什么,即值。1.36 还是 string(4) 部分?(我需要评估的部分是 1.36)

我使用的 if 语句是

  if ($wh_odds_attrib['oddsDecimal'] > $lad_odds_attrib['oddsDecimal']) {
      echo $wh_odds_attrib['oddsDecimal'];

  } else {
      echo $lad_odds_attrib['oddsDecimal'];
  }
4

1 回答 1

1

如果由于某种原因您的字符串比较失败,您可以使用类型转换将值转换为双精度值。

if ((double) $wh_odds_attrib['oddsDecimal'] > (double) $lad_odds_attrib['oddsDecimal']) {
     echo $wh_odds_attrib['oddsDecimal'];
 } else {
     echo $lad_odds_attrib['oddsDecimal'];
 }

不过,这可能不是必需的。建议阅读: http: //php.net/manual/en/language.types.type-juggling.php

于 2013-02-05T16:10:09.853 回答