字符串比较是编程和开发中最常见的任务之一。 strcmp() 是 PHP 中的字符串比较函数。它是 PHP 的 内置 函数,区分大小写,即区分大小写。它用于比较两个字符串。此函数比较两个字符串并判断一个字符串是否大于、小于或等于另一个字符串。 strcmp() 函数是二进制安全的字符串比较。
注意:strcmp() 函数区分大小写以及二进制安全字符串比较。
用法:
strcoll($str1, $str2);
参数
strcmp() 函数接受两个字符串参数,必须传入函数体。这两个参数都必须传入 strcmp() function()。下面给出了以下参数的描述。
- $str1- 它是用于比较的 strcmp() 函数的第一个参数。
- $str2- 它是用于比较的 strcmp() 函数的第二个参数。
strcmp() 的值返回
此函数根据比较随机返回整数值。
返回 0- 如果两个字符串相等,则返回 0,即 $str1 = $str2
返回 < 0- 如果 string1 小于 string2,则返回负值,即 $str1 < $str2
返回 >0- 如果 string1 大于 string 2,则返回正值,即 $str1 > $str2
注意:它计算字符串的 ASCII 值,然后比较两个字符串以检查它们是否相等、大于或小于彼此。
strcoll() 和 strcmp() 函数的区别
strcoll() 和 strcmp() 都是 PHP 的字符串比较函数,但两者略有不同。
Strcoll() 取字节并使用 locale 转换它们,然后比较结果,而 strcmp() 取字符串的字节一个一个,然后无论字节是什么都比较它们。
例子1
<?php
$str1 = "hello php";
$str2 = "hello php";
echo strcoll($str1, $str2). " because both strings are equal. ";
echo " </br>";
echo strcoll("Hello world", "Hello"). " because the first string is greater than the second string.";
?>
输出:
0 because both strings are equal. 6 because the first string is greater than the second string.
备注:第二个字符串比较返回值 6,因为第一个字符串比第二个字符串大 6 个字符,包括空格。
例子2
<?php
echo strcoll("Hello world", "hello"). " because the first string is less than the second string.";
echo "</br>";
echo strcoll("hello", "Hello"). " because the first string is greater than the second string.";
?>
输出:
-1 because the first string is less than the second string. 1 because the first string is greater than the second string.
例子3
<?php
echo strcmp("Hello ", "HELLO"). " because the first string is greater than the second string.";
echo "</br>";
echo strcmp("Hello world", "Hello world Hello"). " because the first string is less than the second string.";
?>
输出:
1 because the first string is greater than the second string. -6 because the first string is less than the second string.
备注:第二个字符串比较返回 -6,因为第一个字符串比第二个字符串小 6 个字符,包括空格。
字符串 1 | 字符串2 | 输出 | 解释 |
---|---|---|---|
Hello | Hello | 0 | 两个字符串相同且相等。 |
Hello | hello | -1 | String1 < String2 因为 H 的 ASCII 值是 72,而 h 是 104,所以 H < h。它以不同的方式对待小写字母和大写字母。 |
hello | Hello | 1 | String1 > String2 因为 H 的 ASCII 值是 72,而 h 是 104,所以 H < h。 |
你好 PHP | Hello | 4 | String1 > String2 因为 String1 比 String2 大 6 个字符,包括空格。 |
hello | 你好 PHP | 1 | String1 > String2 因为 H 的 ASCII 值是 72,而 h 是 104,所以 H < h。 |
Hello | 你好 PHP | -4 | String1 < String2 因为 String1 比 String2 小 4 个字符,包括空格。 |
相关用法
- PHP string strcoll()用法及代码示例
- PHP string strchr()用法及代码示例
- PHP string strcasecmp()用法及代码示例
- PHP string str_repeat()用法及代码示例
- PHP string str_shuffle()用法及代码示例
- PHP string str_ireplace()用法及代码示例
- PHP string str_split()用法及代码示例
- PHP string str_rot13()用法及代码示例
- PHP string str_pad()用法及代码示例
- PHP string strip_tags()用法及代码示例
- PHP string str_word_count()用法及代码示例
- PHP string sha1()用法及代码示例
- PHP string setlocale()用法及代码示例
- PHP string sha1_file()用法及代码示例
- PHP string similar_text()用法及代码示例
- PHP string rtrim()用法及代码示例
- PHP string printf()用法及代码示例
- PHP string ord()用法及代码示例
- PHP string join()用法及代码示例
注:本文由纯净天空筛选整理自 PHP string strcmp() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。