PHP simplexml - 格式化整数

时间:2011-06-21 08:47:06

标签: php variables formatting integer simplexml

我正在使用simplexml从远程服务器恢复xml,我得到的值看起来像这样:

1.28586732

-1.2357956

我将这些值保存在变量中,但我想:

  1. 显示每个值不超过2位小数
  2. 如果值为正
  3. ,则在值前面加一个加号
  4. 根据值是正数还是负数应用不同的CSS样式(例如,如果是负数,则显示为红色的显示值)
  5. 谢谢!

3 个答案:

答案 0 :(得分:3)

要仅显示2个小数位,您可以使用round($num, 2)sprintf("%.2f", $num),不同之处在于sprintf始终返回2个小数位,即5将为{{ 1}},而5.00仅显示必要的小数位数。 round也可以识别区域设置。

要在值前加一个加号,您只需执行sprintf

最后要做CSS样式,你应该在一个范围内包装数字并给它一个类,即if ($num >= 0) $num = '+'.$num;positive

要完成所有这三项工作,你可以拥有这样的功能:

negative

答案 1 :(得分:1)

令:

$s=1.2344545665

if($s>=0)
{
echo "<div class=\"addclass\">+".roundDigits($s,2) . "</div>";
}
else
{
echo "<div class=\"minusclass\">-".roundDigits($s,2) . "</div>";
}

答案 2 :(得分:0)

查看number_format。 http://php.net/manual/en/function.number-format.php如果&gt; = 0表示肯定,&lt; =负面检查。