数字与字符串如何比较

我叫高尚 PHP 语法基础 最后由 萤火虫111 于2015年07月06日回复

  • 1 回答
  • 2.7k 浏览

PHP里面数字与字符串怎么进行比较,跟Java有很大的不同,总是出错,希望老师解答下。

  • 萤火虫111 2015年07月06日 回答 #1楼
  • PHP中的比较运算符有一些需要注意的地方,很容易出错,现列出比较规则:

      1、当两个字符进行大小比较时,是比较着这两个字符的ASCII码大小。

      2、当两个字符串进行大小比较时,是从第一个字符开始,分别比教对应的ASCII大小,只要从从某个对应位置开始,其中一个字符串的当前位置字符大于另一个字符串对应位置字符,即直接判别出这两个字符串大小,如'ba' >'az'。

     <strong> 例:</strong>

      '10'与'a'比较,首先将'1'和'a'ASCII码进行比较,所以'a'大。

      3、当一个数字与一个字符串/字符进行大小比较时,首先系统尝试将此字符串/字符转换为整型/浮点型,然后进行比较,如'12bsd'转型为12,'a'转型为0,需要注意的是此时不是将其对应的ASCII码值与数字进行大小比较了。其实同样的道理,'a' 10结果也是10。

      <strong>注意:</strong>0 与任意不可转化为数字的字符串比较(操作符为==), 均返回 true。

      例<strong>:</strong>

      var_dump('1000000' <'a');    //result: boolean true

      var_dump('a' <1);            //result: boolean true

      var_dump(1 <'1000000');      //result: boolean true

  • 0 评论