php字符串为什么可以直接比较大小
答案:3 悬赏:80 手机版
解决时间 2021-11-28 00:17
- 提问者网友:轮囘Li巡影
- 2021-11-27 13:55
php字符串为什么可以直接比较大小
最佳答案
- 五星知识达人网友:我住北渡口
- 2021-11-27 15:15
可能是实验巧合,用逻辑运算符比较字符串时,会先把字符串转换成数字,再比较数值。
比如
"10 hello"会转换成整型10
"9.8"会转换成浮点9.8f
转换后再进行比较。
比较字符串或字节数据最好用strcmp之类的字符串函数。
题主是个无脑的猪,选了个错误答案
$a='10';
$b='9.8';
var_dump($a>$b);
var_dump(strcmp($a,$b)>0);boolean true
boolean false
所有的资料都会告诉你,字符串绝不能用逻辑运算符。
比如
"10 hello"会转换成整型10
"9.8"会转换成浮点9.8f
转换后再进行比较。
比较字符串或字节数据最好用strcmp之类的字符串函数。
题主是个无脑的猪,选了个错误答案
$a='10';
$b='9.8';
var_dump($a>$b);
var_dump(strcmp($a,$b)>0);boolean true
boolean false
所有的资料都会告诉你,字符串绝不能用逻辑运算符。
全部回答
- 1楼网友:骨子里都是戏
- 2021-11-27 16:38
你这种比较有问题的,因为它会把字符串的首字母做为比较对象,如果第一个数是2,号一个第一个是1,那么第一个就大于第二个,无论后面多长。字母也是,如果 第一个是b,另一个是a,那么后面无论什么,第一个大于第二个。相同则比较下一个。追问按你说的,这两个字符串应该相等才对,但是结果是第一个小于第二个字符串,即跟strcmp的基理一样,按顺序比较'We are family '这些都相等然后比较‘A’和第二个字符串相应位置的'B',得出第str1
- 2楼网友:大漠
- 2021-11-27 16:00
也在等,wq r如果你找到答案 ,,给我发一下呀
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯