为什么在对此语句使用intval()时得到值0(PHP)

时间:2014-12-30 08:30:14

标签: php int echo

<?php

    $sample01 = "3 hours with Mustang";
    echo intval($sample01)."<br/>";

    $sample02 = "Grand Total: $2,802.60";
    echo intval($sample02)."<br/>";

?>

当我回复intval($sample01)时,它会打印3作为结果,这是正确的,就像我的书所说的那样。

但当我回复intval($sample02)时,它会打印0!我感到很困惑。难道不打印2,802吗?

请告知。

2 个答案:

答案 0 :(得分:3)

  

String conversion to numbers

     
    

如果字符串以有效数字数据开头,则这将是使用的值。否则,该值将为0(零)。

  

答案 1 :(得分:1)

这是因为$sample02的值以字符串开头。获得alphabet后,它会将其转换为0。对于$sample01,它以3开头,因此它会打印3,其余部分将被忽略。