這篇文章主要介紹php刪除數(shù)組中指定值的元素的幾種方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
恒山網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),恒山網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為恒山成百上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的恒山做網(wǎng)站的公司定做!php array刪除指定值的方法:1、通過(guò)foreach遍歷后unset刪除;2、使用array_flip方法進(jìn)行刪除;3、使用array_search方法進(jìn)行刪除;4、使用array_keys搜索指定的值再循環(huán)刪除。
php刪除數(shù)組中指定值的元素的幾種方法
測(cè)試數(shù)組如下:
//這是一個(gè)測(cè)試數(shù)組 $testArr = array( 't' => 'qq', 'q' => 'qq', 'b' => 'baidu', 'a' => 'ali', 'm' => 'xiaomi' );
方法一:
//foreach遍歷后unset刪除,這種方法也是最容易想到的方法 function delByValue($arr, $value){ if(!is_array($arr)){ return $arr; } foreach($arr as $k=>$v){ if($v == $value){ unset($arr[$k]); } } return $arr; }
方法二:
//array_flip之后unset,這種方法有一個(gè)弊端,就是反轉(zhuǎn)后由于有兩個(gè)鍵值都為qq,有一個(gè)數(shù)據(jù)將會(huì)丟失,所以在使用時(shí)請(qǐng)謹(jǐn)慎) function delByValue($arr, $value){ $tempArr = array_flip($arr); unset($tempArr[$value]); return array_flip($tempArr); }
方法三:
//array_search,這種方法亦有弊端,array_search搜索到一個(gè)合適的值時(shí)便返回,所以在數(shù)組存在多個(gè)相關(guān)的值這種方法不適用) function delByValue($arr, $value){ $key = array_search($value,$arr); if(isset($key)){ unset($arr[$key]); } return $arr; }
方法四:
//使用array_keys搜索指定的值再循環(huán)unset) function delByValue($arr, $value){ $keys = array_keys($arr, $value); var_dump($keys); if(!empty($keys)){ foreach ($keys as $key) { unset($arr[$key]); } } return $arr; }
四種方法總結(jié)下來(lái),真正比較可行的還是方法1和方法4了,至于這兩種方法哪個(gè)更好,那就應(yīng)該是具體情況具體分析了。
以上是php刪除數(shù)組中指定值的元素的幾種方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
文章題目:php刪除數(shù)組中指定值的元素的幾種方法-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://bm7419.com/article46/dseehg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站設(shè)計(jì)、做網(wǎng)站、微信公眾號(hào)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容