php如何对比字符串内容

发布网友 发布时间:2022-04-19 22:52

我来回答

10个回答

热心网友 时间:2022-04-06 05:18

PHP中,可以用双等号(==)或 三等号(===)来比较字符串。

二者的区别是:双等号不比较类型,三等号会比较类型,但不转换类型;用双等号进行比较时,如果等号左右两边有数字类型的值,刚会把另一个值转化为数字,然后进行比较。如果是纯字符串或者NULL时,会转化为0进行比较。同样,大小于号也和等号一样,比较时可能出现不正确的结果。

综上所述,比较字符串可以用PHP的自带函数strcmp和strcasecmp。其中strcasecmp是strcmp的变种,它会先把字符串转化为小写再进行比较。 如下代码:

var_mp(0 == 'Test');

var_mp(0 == '');

var_mp(5 > 'T');

var_mp(strcmp(5, 'T'));

结果为(第1~3结果是不对的,只有第4个是对的)代码如下:

bool(true)

bool(true)

bool(true)

int(-1)

热心网友 时间:2022-04-06 06:36

<?php
$a = 'vvv';
$b = 'ccc';
if ($a == $b) {
    echo 'same';
} else {
    echo 'diff'
}

热心网友 时间:2022-04-06 08:11

直接用==就是了。。返回TRUE就是相等。否则返回FALSE。。。===是类型也相等如1=='1'返回TRUE,而1==='1'返回FALSE。如果有java基础学习php很快咯。。。我就是这样

热心网友 时间:2022-04-06 10:02

可以使用strcmp()函数进行比较。详细用法请参考这里http://www.w3school.com.cn/php/func_string_strcmp.asp

热心网友 时间:2022-04-06 12:10

在php中就是用 == 啊

比如
$a = "china";
$b = "chinn";
$c = "china";

if($a == $b){
echo "这句话不会输出";
}
if($a == $c){
echo "这句话会输出";
}

不过要注意大小写哦。可能linux服务器区分大小写 呵呵 我记得不太清楚了。

热心网友 时间:2022-04-06 14:35

linux下严格区分大小写,要注意
$a="china";
$b="china";
if($a===$b) #严格比较的话要用“===”
{
echo "equal";
}else{
echo "no";
}
strcmp() 这个方法是来查找字符串中一个子串是否存在,存在返回ture否则返回false

热心网友 时间:2022-04-06 17:16

字符串==字符串
==好就是对比嘛
对比函数

热心网友 时间:2022-04-06 20:14

用strcmp是比较ASCII大小的,
用==是比较字符串是否相等,
你上面说的要用“==“做比较。
$a = "china";
$b = "chinn";
$c = "china";

if($a == $b){
echo "$a与$b相等";
else echo "$a与$b不相等"
}
if($a == $c){
echo "$a与$c相等";
else echo "$a与$c不相等"
}

热心网友 时间:2022-04-06 23:29

echo "china"=="china";
echo "<br>";
echo "china"=="chinn";

热心网友 时间:2022-04-07 03:00

PHP中,可以用双等号(==)或 三等号(===)来比较字符串。
二者的区别是:双等号不比较类型,三等号会比较类型,但不转换类型;用双等号进行比较时,如果等号左右两边有数字类型的值,刚会把另一个值转化为数字,然后进行比较。如果是纯字符串或者NULL时,会转化为0进行比较。同样,大小于号也和等号一样,比较时可能出现不正确的结果。
综上所述,比较字符串可以用PHP的自带函数strcmp和strcasecmp。其中strcasecmp是strcmp的变种,它会先把字符串转化为小写再进行比较。 如下代码:
var_mp(0 == 'Test');
var_mp(0 == '');
var_mp(5 > 'T');
var_mp(strcmp(5, 'T'));
结果为(第1~3结果是不对的,只有第4个是对的)代码如下:
bool(true)
bool(true)
bool(true)
int(-1)
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com