欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

扣丁學(xué)堂淺談php strstr查找字符串中是否包含某些字符的查找函數(shù)

2018-01-04 13:57:02 1432瀏覽

首先strstr()函數(shù)的作用是:返回一個字符串在另一個字符串中首次出現(xiàn)的位置到后者末尾的子字符串(大小寫敏感),以下幾個函數(shù)均可用來判斷某字符串是否包含另外一個字符串PHP中判斷一個字符串是否包含其它字符是很常見的操作。雖然很簡單,但還是寫了幾個函數(shù),質(zhì)量可能不是很高,權(quán)當(dāng)鍛煉。下面我們一起來看一下吧。



/**

*以下幾個函數(shù)均可用來判斷某字符串是否包含另外一個字符串

*PHP中判斷一個字符串是否包含其它字符是很常見的操作。

*雖然很簡單,但還是寫了幾個函數(shù),質(zhì)量可能不是很高,權(quán)當(dāng)鍛煉。

*如果這幾個函數(shù)恰好能幫上你的忙,我將會很高興的。

*/

/**

*利用一下strpos()函數(shù)

*@paramunknown_type$haystack

*@paramunknown_type$needle

*/

functionisInString1($haystack,$needle){

//防止$needle位于開始的位置

$haystack='-_-!'.$haystack;

return(bool)strpos($haystack,$needle);

}

/**

*利用字符串分割

*@paramunknown_type$haystack

*@paramunknown_type$needle

*/

functionisInString2($haystack,$needle){

$array=explode($needle,$haystack);

returncount($array)>1;

}

/**

*用了一下正則,這種方法十分不建議,尤其是$needle中包含

*特殊字符,如^,$,/等等

*@paramunknown_type$haystack

*@paramunknown_type$needle

*/

functionisInString3($haystack,$needle){

$pattern='/'.$needle.'/';

return(bool)preg_match($pattern,$haystack);

}

/**

*利用一下strpos()函數(shù)

*@paramunknown_type$haystack

*@paramunknown_type$needle

*/

functionisInString4($haystack,$needle){

returnfalse!==strpos($haystack,$needle);

}

//測試

$haystack='IamITBDW';

$needle='IT';

var_dump(isInString1($haystack,$needle));

我覺得最簡單的就是這種了strpos($a,$b)!==false如果$a中存在$b,則為true,否則為false。

用!==false(或者===false)的原因是如果$b正好位于$a的開始部分,那么該函數(shù)會返回int(0),那么0是false,但$b確實位于$a中,所以要用!==判斷一下類型,要確保是嚴(yán)格的false。昨天晚上去中關(guān)村圖書大廈,看到一本書中用的是strpos===true來判斷,這是極其不正確的。。。

出錯的書為《PHP求職寶典》107頁(2012-02-26更新)

其它的還有PHP原生支持的函數(shù),如strstr(),stristr()等,直接判斷就可以了。

定義和用法

strstr()函數(shù)搜索一個字符串在另一個字符串中的第一次出現(xiàn)。

該函數(shù)返回字符串的其余部分(從匹配點)。如果未找到所搜索的字符串,則返回false。

語法

strstr(string,search)

參數(shù)描述

string必需。規(guī)定被搜索的字符串。

search必需。規(guī)定所搜索的字符串。如果該參數(shù)是數(shù)字,則搜索匹配數(shù)字ASCII值的字符。

提示和注釋

注釋:該函數(shù)是二進(jìn)制安全的。

注釋:該函數(shù)對大小寫敏感。如需進(jìn)行大小寫不敏感的搜索,請使用stristr()。

例子1

echostrstr("Helloworld!","world");

?>

//輸出:world!

例子2

在本例中,我們將搜索"o"的ASCII值所代表的字符:

echostrstr("Helloworld!",111);

?>

//輸出:oworld!

例子3

$email='admin@jb51.net';

$domain=strstr($email,'@');

echo$domain;//prints@jb51.net

$user=strstr($email,'@',true);//AsofPHP5.3.0

echo$user;//printsadmin

?>

$city_str=fopen(cgi_path."/data/weather/city.dat","r");

$city_ch=fread($city_str,filesize(cgi_path."/data/weather/city.dat"));

$city_ch_arr=explode("|",$city_ch);

//如果能匹配到所在市

if(strstr($area_ga,"市")){

foreach($city_ch_arras$city_ch_arr_item){

if(@strstr($area_ga,$city_ch_arr_item)){

echo$area_ga.'

';

echo$city_ch_arr_item;

$s_city=$city_ch_arr_item;

}

}

}

//如果找不到市那么看看是不是能找到省有時會有這樣的情況:廣東省長城寬帶這樣的一律歸屬到該省省府

elseif(strstr($area_ga,"河北")!==false){

$s_city="石家莊";

}elseif(strstr($area_ga,"福建")!==false){

$s_city="福州";

}elseif(strstr($area_ga,"臺灣")!==false){

$s_city="臺北";

}elseif(strstr($area_ga,"香港")!==false){

$s_city="香港";

}elseif(strstr($area_ga,"廣西")!==false){

$s_city="南寧";

}elseif(strstr($area_ga,"浙江")!==false){

$s_city="杭州";

}elseif(strstr($area_ga,"江蘇")!==false){

$s_city="南京";

}elseif(strstr($area_ga,"山東")!==false){

$s_city="濟南";

}elseif(strstr($area_ga,"安徽")!==false){

$s_city="合肥";

}elseif(strstr($area_ga,"湖南")!==false){

$s_city="長沙";

}elseif(strstr($area_ga,"四川")!==false){

$s_city="成都";

}elseif(strstr($area_ga,"云南")!==false){

$s_city="昆明";

}elseif(strstr($area_ga,"廣東")!==false){

$s_city="廣州";

}elseif(strstr($area_ga,"貴州")!==false){

$s_city="貴陽";

}elseif(strstr($area_ga,"西藏")!==false){

$s_city="拉薩";

}elseif(strstr($area_ga,"新疆")!==false){

$s_city="烏魯木齊";

}elseif(strstr($area_ga,"蒙古")!==false){

$s_city="呼和浩特";

}elseif(strstr($area_ga,"黑龍江")!==false){

$s_city="哈爾濱";

}elseif(strstr($area_ga,"遼寧")!==false){

$s_city="沈陽";

}elseif(strstr($area_ga,"吉林")!==false){

$s_city="長春";

}elseif(strstr($area_ga,"河南")!==false){

$s_city="鄭州";

}elseif(strstr($area_ga,"湖北")!==false){

$s_city="武漢";

}elseif(strstr($area_ga,"山西")!==false){

$s_city="太原";

}elseif(strstr($area_ga,"陜西")!==false){

$s_city="西安";

}elseif(strstr($area_ga,"甘肅")!==false){

$s_city="蘭州";

}elseif(strstr($area_ga,"寧夏")!==false){

$s_city="銀川";

}elseif(strstr($area_ga,"海南")!==false){

$s_city="???;

}elseif(strstr($area_ga,"江西")!==false){

$s_city="南昌";

}elseif(strstr($area_ga,"澳門")!==false){

$s_city="澳門";

}

//如果都不存在就是默認(rèn)顯示廣州比如本地機

else{

$s_city="廣州";

}

如上代碼:

其中city.dat中是一些城市格式是這樣的

廣州|深圳|汕頭|惠州|珠海|揭陽|佛山|河源|陽江|茂名|湛江|梅州|肇慶|韶關(guān)|潮州|東莞|中山|清遠(yuǎn)|江門|汕尾|云浮|增城|從化|樂昌|南雄|臺山|開平|鶴山|恩平|廉江|雷州|吳川|高州|化州|高要|四會|興寧|陸豐|陽春|英德|連州|普寧|羅定|北京|天津|上海|重慶|烏魯木齊|克拉瑪依|石河子|阿拉爾|圖木舒克|五家渠|哈密|吐魯番|阿克蘇|喀什|和田|伊寧|塔城|阿勒泰|奎屯|博樂|昌吉|阜康|庫爾勒|阿圖什|烏蘇|拉薩|日喀則|銀川|石嘴山|吳忠|固原|中衛(wèi)|呼和浩特|包頭|烏海|赤峰|通遼|鄂爾多斯|呼倫貝爾|巴彥淖爾|烏蘭察布|霍林郭勒|滿洲里|牙克石|扎蘭屯|根河|額爾古納|豐鎮(zhèn)|錫林浩特|二連浩特|烏蘭浩特|

參考

echostrstr('aaaaaaaaaaaboaaaaaaaaaaaaboxcccccccccbcccccccccccccc','box')."

\n";

//輸出boxcccccccccbcccccccccccccc

//完整匹配中間的box不因前而的b而停止

echostrstr('aaaaaaAbaaaaaaaaaaaaaaaaboxccccccccccccboxccccccccccc','box')."

\n";

//輸出boxccccccccccccboxccccccccccc

//有兩個關(guān)鍵字時,遇到第一個停止.

echostrstr('SubscrtibeourtofreenewsletteraboutNewFreewto','to')."

\n";

//輸出tofreenewsletteraboutNewFreewto

?>

以上就是phpstrstr查找字符串中是否包含某些字符的查找函數(shù)的簡單分享,想要學(xué)好PHP一定要選擇專業(yè)靠譜的PHP培訓(xùn)機構(gòu),扣丁學(xué)堂PHP培訓(xùn)不僅有專業(yè)的老師和與時俱進(jìn)的課程體系,還有大量的PHP視頻教程供學(xué)員觀看學(xué)習(xí),想要學(xué)好PHP的小伙伴抓緊時間行動吧。扣丁學(xué)堂PHP技術(shù)交流群:374332265。





扣丁學(xué)堂微信公眾號



關(guān)注微信公眾號獲取更多學(xué)習(xí)資料



查看更多關(guān)于“php培訓(xùn)資訊的相關(guān)文章>>

標(biāo)簽: PHP培訓(xùn) PHP視頻教程 PHP從入門到精通 PHP學(xué)習(xí)路線圖 PHP開發(fā)工程師

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關(guān)村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部