『壹』 php中的strcmp()函數對數組元素進行字元串比較;是怎麼比較的是大到小還是小到大
PHP里的strcmp()函數有兩個參數,完整形式為:
strcmp(string1,string2)
其返回結果在:
(a) string1跟string2相等時,返回等於0
(b)string1比string2小時,返回值< 0
(c)string1比string2大時,返回值> 0
具體的比較大小,我給你舉兩個例子就知道了:
相等的情況就不用說了,假設string1是abcde,string2是abced,那麼比較的時候
從第一個字元開始比較,發現都是a,不能決定結果
繼續比較第二個字元,發現都是b,不能決定結果
繼續比較第三個字元,發現都是c,不能決定結果
繼續比較第四個字元,發現stirng1中的是d,而string2中的是e,比較他們的ASCII碼
d要比e小,因此,string1比string2小,後面的就不比較了,到這里就結束了,返回一個小於零的值
如果一個長一個短,怎麼辦呢?比如string1是hello, string2是helloworld
此時比較到o之後,發現string1已經結束了,而string2還沒結束,認為string1 < string2
這就好比按照大小個排隊,個子矮的站在前面了,認為是小的。
明白了吧:)
另外,學習使用函數的時候,應該善於查手冊,比如這里:
http://php.net/manual/en/function.strcmp.php
希望對你有所幫助,如果還有問題,歡迎交流:)
『貳』 PHP中strcmp()和strcasecmp()函數字元串比較用法分析
本文實例講述了PHP中strcmp()和strcasecmp()函數字元串比較用法。分享給大家供大家參考,具體如下:
一、PHP中strcmp()函數用於比較兩個字元串(區分大小寫),其定義如下:
strcmp(string1,string2)
參數說明:
string1
必需。規定要比較的第一個字元串。
string2
必需。規定要比較的第二個字元串。
PS:strcmp()函數與
strncmp()
函數類似,不同的是,strncmp()可以指定每個字元串用於比較的字元數。
二、PHP中strcasecmp()函數比較兩個字元串(不區分大小寫),其定義如下:
strcasecmp(string1,string2)
參數說明:
string1 必需。規定要比較的第一個字元串。
string2 必需。規定要比較的第二個字元串。
PS:strcasecmp()函數與
strncasecmp()
函數類似,不同的是,strncasecmp()可以指定每個字元串用於比較的字元數。
示例代碼:
<?php
$str1="腳本之家";
$str2="腳本之家";
$str3="www.jb51.net";
$str4="www.JB51.NET";
echo
strcmp($str1,$str2);//兩個字元串相等
echo
"<br/>";
echo
strcmp($str3,$str4);//注意該函數區分大小寫
echo
"<br/>";
echo
strcasecmp($str3,$str4);//該函數不區分大小寫
?>
運行結果如下:
0
1
0
補充:關於返回值問題
針對參數string1與string2的比較:
如果兩個字元串相等,則返回值為
0
如果
string1
小於
string2,則返回值小於0
如果
string1
大於
string2,則返回值大於0
希望本文所述對大家PHP程序設計有所幫助。
『叄』 關於PHP中strcmp()的漢字與漢字比較,請指點迷津
strcmp() 函數比較兩個字元串。
該函數返回:
0 - 如果兩個字元串相等
<0 - 如果 string1 小於 string2
>0 - 如果 string1 大於 string2
『肆』 php中strcmp函數是如何進行比較的
intstrcmp(stringstr1,stringstr2)
當str1小於str2時返回負數,當str1大於str2時返回正數,相等時候返回0。
注意比較是區分大小寫的。
strcmp("h","o")結果為-1是正確的,因為"h"的ASCII碼ox68小於"o"的ASCII碼0x6f。
字母表裡面後面的ASCII碼大,比如'b'>'a',所有小寫的比大寫的字母大,比如'a'>'Z'。
『伍』 php比較字元串的函數strcmp()是通過字母順序還是字母的ASCII碼比較大小的
按ASCII碼。所以strcmp('A', 'a')<0。A=64, a=97
『陸』 幾個常用的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)
『柒』 PHP strcmp()和strcasecmp()的區別實例
這篇文章主要介紹了PHP中strcmp()和strcasecmp()函數字元串比較用法,結合實例形式較為詳細的分析了strcmp()和strcasecmp()函數的功能,使用方法與區別
本文實例講述了PHP中strcmp()和strcasecmp()函數字元串比較用法。分享給大家供大家參考,具體如下:
一、PHP中strcmp()函數用於比較兩個字元串(區分大小寫),其定義如下:
strcmp(string1,string2)
參數說明:
string1
必需。規定要比較的第一個字元串。
string2
必需。規定要比較的第二個字元串。
PS:strcmp()函數與
strncmp()
函數類似,不同的是,strncmp()可以指定每個字元串用於比較的字元數。
二、PHP中strcasecmp()函數比較兩個字元串(不區分大小寫),其定義如下:
strcasecmp(string1,string2)
參數說明:
string1
必需。規定要比較的第一個字元串。
string2
必需。規定要比較的第二個字元串。
PS:strcasecmp()函數與
strncasecmp()
函數類似,不同的是,strncasecmp()可以指定每個字元串用於比較的字元數。
示例代碼:
<?php
$str1="碼農教程";
$str2="碼農教程";
$str3="www.jmanongjc.com";
$str4="www.jmanongjc.COM";
echo
strcmp($str1,$str2);//兩個字元串相等
echo
"<br/>";
echo
strcmp($str3,$str4);//注意該函數區分大小寫
echo
"<br/>";
echo
strcasecmp($str3,$str4);//該函數不區分大小寫
?>
結果:
";
echo
strcmp($str3,$str4);//注意該函數區分大小寫
echo
"
";
echo
strcasecmp($str3,$str4);//該函數不區分大小寫
?>
補充:關於返回值問題
針對參數string1與string2的比較:
如果兩個字元串相等,則返回值為
0
如果
string1
小於
string2,則返回值小於0
如果
string1
大於
string2,則返回值大於0
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
『捌』 php的strcmp()~~~
總的來說,php是弱類型的語言,如果你只是大致判斷兩個字元串是否相等,可以都用,但是strcmp() 功能更多。 strcmp() 功能:比較字元串s1和s2。 說明: 當s1<s2時,返回值<0 當s1=s2時,返回值=0 當s1>s2時,返回值>0 用這個函數可以分清是哪個字元串長,哪個字元串短。
『玖』 php中比較兩個數大小的內置函數是什麼
函數描述:mixed max(mixed arg1, mixed arg2, …,mixed argn);
返回值:返回此數組中的最大值,若參數中有浮點數,則所有參數轉化成浮點數,
返回值也為浮點數;否則所有參數轉化成整數,返回值為整數。
函數描述:mixed min(mixed arg1, mixed arg2, …,mixed argn);
返回值:返回此數組中的最小值,若參數中有浮點數,則所有參數轉化成浮點數,
返回值也為浮點數;否則所有參數轉化成整數,返回值為整數。
『拾』 PHP比較字元串 strcmp()函數問題
首先看位元組數是不對的。我測試了下,這個比較是從開始比,只要遇到不想等的就會出結果了。也就是說,如果str1的某個字元比str2小,則str1<str2,而不會按整個字元串來比較。單個字元按ASCii碼轉換後比較,規則是小寫字母大於大寫字母,字母往後越大。如a>A,a<b<c。