字符串比較是編程和開發中最常見的任務之一。 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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。