php如何对比字符串内容
php中有么有类似于java中的equal中的方法或其他方式,可以比较字符串内容,例如“china”和“china”相同,而“china”和“chinn”不同,看了php...
php中有么有类似于java中的equal中的方法或其他方式,可以比较字符串内容,例如“china”和“china”相同,而“china”和“chinn”不同,看了php手册,上面说的用==号和函数strcmp,也许是我没有理解他们更多技巧,上面两种方式都说是比较大小,我试验了下,大小意思好像是长度,还有其字符ASCII的值,不知道比较内容用上面方式?求高手指导
展开
10个回答
展开全部
PHP中,可以用双等号(==)或 三等号(===)来比较字符串。
二者的区别是:双等号不比较类型,三等号会比较类型,但不转换类型;用双等号进行比较时,如果等号左右两边有数字类型的值,刚会把另一个值转化为数字,然后进行比较。如果是纯字符串或者NULL时,会转化为0进行比较。同样,大小于号也和等号一样,比较时可能出现不正确的结果。
综上所述,比较字符串可以用PHP的自带函数strcmp和strcasecmp。其中strcasecmp是strcmp的变种,它会先把字符串转化为小写再进行比较。 如下代码:
var_dump(0 == 'Test');
var_dump(0 == '');
var_dump(5 > 'T');
var_dump(strcmp(5, 'T'));
结果为(第1~3结果是不对的,只有第4个是对的)代码如下:
bool(true)
bool(true)
bool(true)
int(-1)
二者的区别是:双等号不比较类型,三等号会比较类型,但不转换类型;用双等号进行比较时,如果等号左右两边有数字类型的值,刚会把另一个值转化为数字,然后进行比较。如果是纯字符串或者NULL时,会转化为0进行比较。同样,大小于号也和等号一样,比较时可能出现不正确的结果。
综上所述,比较字符串可以用PHP的自带函数strcmp和strcasecmp。其中strcasecmp是strcmp的变种,它会先把字符串转化为小写再进行比较。 如下代码:
var_dump(0 == 'Test');
var_dump(0 == '');
var_dump(5 > 'T');
var_dump(strcmp(5, 'T'));
结果为(第1~3结果是不对的,只有第4个是对的)代码如下:
bool(true)
bool(true)
bool(true)
int(-1)
展开全部
<?php
$a = 'vvv';
$b = 'ccc';
if ($a == $b) {
echo 'same';
} else {
echo 'diff'
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接用==就是了。。返回TRUE就是相等。否则返回FALSE。。。===是类型也相等如1=='1'返回TRUE,而1==='1'返回FALSE。如果有java基础学习php很快咯。。。我就是这样
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以使用strcmp()函数进行比较。详细用法请参考这里http://www.w3school.com.cn/php/func_string_strcmp.asp
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在php中就是用 == 啊
比如
$a = "china";
$b = "chinn";
$c = "china";
if($a == $b){
echo "这句话不会输出";
}
if($a == $c){
echo "这句话会输出";
}
不过要注意大小写哦。可能linux服务器区分大小写 呵呵 我记得不太清楚了。
比如
$a = "china";
$b = "chinn";
$c = "china";
if($a == $b){
echo "这句话不会输出";
}
if($a == $c){
echo "这句话会输出";
}
不过要注意大小写哦。可能linux服务器区分大小写 呵呵 我记得不太清楚了。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询