php数字与字符串比较

 1 <?php
 2     /* 数字与字符串比较测试 */
 3     // 数字0与空字符串比较
 4     if (0 == '')        
 5         echo "0 == ''<br/>";        // ok
 6     
 7     // 数字0与字符串'0'比较
 8     if (0 == '0')
 9         echo "0 == '0'<br/>";        // ok
10         
11     // 数字0与字符串'0.0'比较
12     if (0 == '0.0')
13         echo "0 == '0.0'<br/>";        // ok
14         
15     // 数字0与字符串'00'比较
16     if (0 == '00')
17         echo "0 == '00'<br/>";        // ok
18 
19     // 数字0与字符串'1'比较
20     if (0 == '1')
21         echo "0 == '1'<br/>";        // not ok
22         
23     // 数字0与字符串'a'比较
24     if (0 == 'a')
25         echo "0 == 'a'<br/>";        // ok!!!
26         
27     // 数字0与字符串'b'比较
28     if (0 == 'b')
29         echo "0 == 'b'<br/>";        // ok!!!    
30         
31     // 数字0与字符串'as8dfu9asfofosj24279sjdf'比较
32     if (0 == 'as8dfu9asfofosj24279sjdf')
33         echo "0 == 'as8dfu9asfofosj24279sjdf'<br/>";        // ok!!!
34     
35     // 数字0与字符串'2a'比较
36     if (0 == '2a')
37         echo "0 == '2a'<br/>";        // not ok
38         
39     // 数字0与字符串'0a'比较
40     if (0 == '0a')
41         echo "0 == '0a'<br/>";        // ok
42 ?>

 解释

<?php
    echo (float)'a' . '<br/>';        // 0
    echo (float)'2a' . '<br/>';        // 2
    echo (float)'a2a' . '<br/>';    // 0
    echo (float)'22a' . '<br/>';    // 22
?>

php对于有些含有字母的字符串先自动转为0再比较,

而对于以数字开头的字符串先自动转为相应的数字再比较。

转载于:https://www.cnblogs.com/liubaocheng999/archive/2013/04/01/2993736.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值