Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk membandingkan rentetan dalam php untuk melihat sama ada ia berbeza
Tiga kaedah perbandingan: 1. Gunakan operator perbandingan (==, ===, >,
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi PHP 8.1, komputer DELL G3
Perbandingan rentetan (rentetan perbandingan) ialah aksara Operasi biasa dalam pemprosesan rentetan, tiga kaedah perbandingan biasa diperkenalkan di bawah:
Kaedah 1. Gunakan operator perbandingan
Kita boleh menggunakan ==
( Tanda sama dua kali ganda ) atau ===
(tanda sama tiga kali ganda) untuk membandingkan sama ada rentetan adalah sama.
<?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>"; } ?>
Hasil keluaran:
Perbezaan antara
==
dan===
: == tidak membandingkan jenis, tanda sama tiga kali ganda ===, ia tidak menukar jenisApabila membandingkan menggunakan operator kesamaan (==), jika kedua-dua nilai adalah; yang sama (ia hanya membandingkan nilai pembolehubah, bukan jenis data), mengembalikan nilai sebenar jika kedua-dua nilai tidak sama, mengembalikan nilai palsu.
Apabila membandingkan menggunakan pengendali identiti (===), anda melihat untuk melihat sama ada dua pembolehubah (ungkapan atau pemalar) adalah sama nilai dan mempunyai jenis data yang sama, iaitu kedua-duanya adalah rentetan atau kedua-duanya Semua adalah integer dan seterusnya. Operator ini mengembalikan benar jika dua pembolehubah mengandungi nilai yang sama dan jenis data yang sama, jika tidak ia mengembalikan palsu.
Kita boleh menggunakan (kurang daripada) atau <code>>
(lebih besar daripada) untuk membandingkan saiz rentetan.
<?php header("Content-type:text/html;charset=utf-8"); $str1="12"; $str2="13"; if($str1>$str2){ echo "'$str1' 比 '$str2' 大<br>"; }else{ echo "'$str1' 比 '$str2' 小<br>"; } $str1="15"; $str2="13"; if($str1<$str2){ echo "'$str1' 比 '$str2' 小<br>"; }else{ echo "'$str1' 比 '$str2' 大<br>"; } ?>
Hasil keluaran:
'12' 比 '13' 小 '15' 比 '13' 大
Senarai operator perbandingan PHP:
比较运算符 | 名称 | 描述 |
---|---|---|
$a == $b | 等于 | 如果类型转换后 $a 和 $b 的值相等,则返回 TRUE,否则返回 FALSE |
$a === $b | 全等 | 如果 $a 和 $b 不仅值相等,而且它们值的类型也相等,则返回 TRUE,否则返回 FALSE |
$a != $b | 不等于 | 如果类型转换后 $a 的值不等于 $b 的值,则返回TRUE,否则返回 FALSE |
$a $b | 不等于 | 与 != 相同,如果类型转换后 $a 的值不等于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a !== $b | 不全等 | 如果 $a 的值不等于 $b的值,或者它们值的类型不同,则返回 TRUE,否则返回 FALSE |
$a | 小与 | 如果 $a 的值小于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a > $b | 大于 | 如果 $a 的值大于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a | 小于等于 | 如果 $a 的值小于或者等于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a >= $b | 大于等于 | 如果 $a 的值大于或者等于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a $b | 太空船运算符(组合比较符) | 当 $a小于、等于、大于 $b时 分别返回一个小于、等于、大于0的整型值。 PHP7开始提供. |
$a ?? $b ?? $c | NULL合并操作符 | 从左往右第一个存在且不为 NULL 的操作数。如果都没有定义且不为 NULL,则返回 NULL。PHP7开始提供。 |
Kaedah 2. Gunakan fungsi terbina dalam strcmp() -- Bandingkan dua rentetan dalam cara sensitif huruf besar kecil
<?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>"; ?>
strcmp() Apabila membandingkan dua rentetan, jika:
Jika dua rentetan adalah sama, 0 akan dikembalikan; >
Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk membandingkan rentetan dalam php untuk melihat sama ada ia berbeza. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!