本文實(shí)例分析了php中Ctype函數(shù)用法。分享給大家供大家參考。具體分析如下:
Ctype函數(shù)是Php的Ctype擴(kuò)展函數(shù)提供了一組函數(shù)用于校驗(yàn)字符串中的字符是否是正確的格式,這里我們主要介紹一下這些字符串驗(yàn)證函數(shù)的語法、有什么特殊的函數(shù),如何去驗(yàn)證等.
Ctype函數(shù)是PHP內(nèi)置的字符串體測(cè)函數(shù),主要有以下幾種:
ctype_alnum -- Check for alphanumeric character(s):檢測(cè)是否是只包含[A-Za-z0-9]
ctype_alpha -- Check for alphabetic character(s):檢測(cè)是否是只包含[A-Za-z]
ctype_cntrl -- Check for control character(s):檢查是否是只包含類是“nrt”之類的字 符控制字符
ctype_digit -- Check for numeric character(s):檢查時(shí)候是只包含數(shù)字字符的字符串(0-9)
ctype_graph -- Check for any printable character(s) except space:檢查是否是只包含有可以打印出來的字符(除了空格)的字符串
ctype_lower -- Check for lowercase character(s):檢查是否所有的字符都是英文字母,并且都是小寫的
ctype_print -- Check for printable character(s):檢查是否是只包含有可以打印出來的字符的字符串
ctype_punct -- Check for any printable character which is not whitespace or an alphanumeric character:檢查是否是只包含非數(shù)字/字符/空格的可打印出來的字符
ctype_space -- Check for whitespace character(s):檢查是否是只包含類是“ ”之類的字符和空格
ctype_upper -- Check for uppercase character(s):檢查是否所有的字符都是英文字母,并且都是大寫的
ctype_xdigit -- Check for character(s) representing a hexadecimal digit:檢查是否是16進(jìn)制的字符串,只能包括 “0123456789abcdef”
如何使用他們,直接上代碼:
代碼如下:
$str1 = 'Azxc1234';//true
$str2 = '123#Axy';//false
if (ctype_alnum($string)) {
echo "This string totally works";
}
else {
echo "And this one not so much";
}
注意:如果傳第一個(gè)空字符串,在php5.1之后是返回 false,但是早期的版本是返回true.
只要確保傳遞給函數(shù)的參數(shù)是一個(gè)字符串就不會(huì)有問題,代碼如下:
代碼如下:
$integer = 42;
ctype_digit($integer); // false
ctype_digit((string)$integer); // true
結(jié)論:在使用PHP的過程中,同樣的操作可能有不同的方法,選擇一個(gè)合適的方法顯然很重要。在PHP里判斷字符串類型的函數(shù)有兩類,ctype_*和 is_* 他們?cè)趯?shí)際的應(yīng)用中 is_*這一系列的函數(shù)用的更多一些,當(dāng)然除了這些辦法我們還可以選擇使用正則表達(dá)式來做判斷,而且更強(qiáng)大,但是使用PHP內(nèi)置的函數(shù)可以更好地減少出錯(cuò)率.
更多信息請(qǐng)查看IT技術(shù)專欄