Home >Backend Development >PHP Problem >How to compare strings in php to see if they are different

How to compare strings in php to see if they are different

青灯夜游
青灯夜游Original
2022-07-08 20:00:033743browse

Three comparison methods: 1. Use comparison operators (==, ===, >,

How to compare strings in php to see if they are different

The operating environment of this tutorial: windows7 system, PHP version 8.1, DELL G3 computer

String comparison (comparison string) is a character A common operation in string processing, three common comparison methods are introduced below:

Method 1. Use the comparison operator

We can use = = (double equal sign) or === (triple equal sign) to compare strings for equality.

<?php
header("Content-type:text/html;charset=utf-8");
$str1="Hello world!";
$str2="Hello world!";
if($str1==$str2){
	echo "两个字符串相等<br>";
}else{
	echo "两个字符串不相等<br>";
}
if($str1===$str2){
	echo "两个字符串相等<br>";
}else{
	echo "两个字符串不相等<br>";
}
?>

Output result:

How to compare strings in php to see if they are different

##== and = The difference between ==: == does not compare types, the triple equal sign === does not convert types;

When comparing using the equality (==) operator, if two If the two values ​​are the same (it only compares the value of the variable, not the data type), it returns a true value; if the two values ​​​​are not the same, it returns a false value.

When comparing using the identity (===) operator, you look to see if two variables (expressions or constants) are equal in value and have the same data type, i.e. both are strings or both All are integers and so on. This operator returns true if two variables contain the same value and the same data type, otherwise it returns false.

We can use

(less than) or > (greater than) to compare the size of strings.

<?php
header("Content-type:text/html;charset=utf-8");
$str1="12";
$str2="13";
if($str1>$str2){
	echo "&#39;$str1&#39; 比 &#39;$str2&#39; 大<br>";
}else{
	echo "&#39;$str1&#39; 比 &#39;$str2&#39; 小<br>";
}
$str1="15";
$str2="13";
if($str1<$str2){
	echo "&#39;$str1&#39; 比 &#39;$str2&#39; 小<br>";
}else{
	echo "&#39;$str1&#39; 比 &#39;$str2&#39; 大<br>";
}
?>

Output result:

&#39;12&#39; 比 &#39;13&#39; 小
&#39;15&#39; 比 &#39;13&#39; 大

PHP comparison operator list:

Comparison operatorNameDescription$a == $bEqual toIf the values ​​of $a and $b are equal after type conversion, return TRUE, otherwise return FALSE$a === $bCongruentIf $a and $b are not only equal in value, but also their values The types are also equal, then TRUE is returned, otherwise FALSE is returned $a != $b is not equal to If $a is converted after type conversion If the value is not equal to the value of $b, it returns TRUE, otherwise it returns FALSE##$a $b$a !== $b$a $a > $b$a $a >= $ b##$a $bSpaceship operator (combination comparison operator)When $a is less than, equal to, or greater than $b, it returns an integer value less than, equal to, or greater than 0 respectively. PHP7 starts to provide.$a ?? $b ?? $c NULL merge operatorThe first one exists from left to right And the operand is not NULL. If neither is defined and is not NULL, NULL is returned. Available starting with PHP7. Method 2. Use the built-in function strcmp()--Compare two strings in a case-sensitive manner
is not equal to and! = Same, if the value of $a is not equal to the value of $b after type conversion, TRUE is returned, otherwise FALSE is returned
is incomplete etc If the value of $a is not equal to the value of $b, or the types of their values ​​are different, return TRUE, otherwise return FALSE
小与 If the value of $a is less than the value of $b, return TRUE, otherwise return FALSE
Greater than If the value of $a is greater than the value of $b, return TRUE, otherwise return FALSE
Less than or equal If the value of $a is less than or equal to the value of $b, return TRUE, otherwise return FALSE
Greater than or equal If the value of $a is greater than or equal to the value of $b, return TRUE, otherwise return FALSE

<?php
$str1="12";
$str2="12";
echo strcmp($str1,$str2)."<br>";

$str1="12";
$str2="13";
echo strcmp($str1,$str2)."<br>";

$str1="15";
$str2="13";
echo strcmp($str1,$str2)."<br>";
?>

When strcmp() compares two strings, if: How to compare strings in php to see if they are different

If the two strings are equal, 0 will be returned;
  • If string1 is less than string2, the value of
  • If string1 is greater than string2, the value of > 0 will be returned;
  • Method 3. Use the built-in function strcasecmp()--Compare two strings in a case-insensitive manner

strcasecmp() function and strcmp () functions are similar, both can compare strings, and the return values ​​are also the same. The only difference is that the strcasecmp() function is not case-sensitive.

<?php
header("Content-type:text/html;charset=utf-8");
$url1="//m.sbmmt.com/";
$url2="HTTPS://WWW.PHP.CN/";
$c=strcasecmp($url1, $url2);
echo $c."<br>";
if($c== 0){
        echo &#39;两个网址相同&#39;;
    } else {
        echo &#39;两个网址不同&#39;;
    }
?>

Recommended learning: "How to compare strings in php to see if they are differentPHP Video Tutorial

"

The above is the detailed content of How to compare strings in php to see if they are different. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn