php 刪除一維數(shù)組中某一個(gè)值元素的操作方法
1. 自己寫(xiě)for循環(huán)
從array里去掉$tmp這個(gè)元素的值
<?php $tmp = '324'; $arr = array( '0' => '321', '1' => '322', '2' => '323', '3' => '324', '4' => '325', '5' => '326', );
代碼
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } print_r($arr); ?>
此時(shí)
Array ( [0] => 321 [1] => 322 [2] => 323 [4] => 325 [5] => 326 )
要重置索引,加上一句
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_values($arr); print_r($arr); ?>
此時(shí)結(jié)果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
array_merge()也可以實(shí)現(xiàn)同樣的效果
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_merge($arr); print_r($arr); ?>
此時(shí)結(jié)果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
2.優(yōu)先使用php自帶函數(shù),因?yàn)槟鞘怯肅實(shí)現(xiàn)的,比自己寫(xiě)效率高。
使用array_search和array_splice,這里array_splice自動(dòng)實(shí)現(xiàn)重置序列值。
$key=array_search($tmp ,$arr); array_splice($arr,$key,1); var_dump($arr);
此時(shí)結(jié)果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
最佳實(shí)踐
$arr = array_merge(array_diff($arr, array($tmp))); var_dump($arr);
結(jié)果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
這里,如果數(shù)組元素是復(fù)雜數(shù)據(jù)結(jié)構(gòu),同樣能夠?qū)崿F(xiàn)比較。當(dāng)然數(shù)據(jù)本身仍然是一維的。
上面的例子中$tmp是一個(gè)值,如果$tmp是一個(gè)數(shù)組或者其他復(fù)雜數(shù)據(jù)結(jié)構(gòu),從$array中刪除所有$tmp包含的元素,上面的方法同樣有效
$arr = array_merge(array_diff($arr, $tmp)); var_dump($arr);
以上這篇php 刪除一維數(shù)組中某一個(gè)值元素的操作方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
PHP實(shí)現(xiàn)對(duì)圖片的反色處理功能【測(cè)試可用】
這篇文章主要介紹了PHP實(shí)現(xiàn)對(duì)圖片的反色處理功能,涉及php針對(duì)圖片的讀取、數(shù)值運(yùn)算等相關(guān)操作技巧,需要的朋友可以參考下2018-02-02PHP設(shè)計(jì)模式之裝飾器模式定義與用法簡(jiǎn)單示例
這篇文章主要介紹了PHP設(shè)計(jì)模式之裝飾器模式定義與用法,結(jié)合簡(jiǎn)單實(shí)例形式分析了php裝飾器模式的概念、原理、定義與簡(jiǎn)單使用方法,需要的朋友可以參考下2018-08-08PHP+MySQL使用mysql_num_rows實(shí)現(xiàn)模糊查詢(xún)圖書(shū)信息功能
這篇文章主要介紹了PHP+MySQL使用mysql_num_rows實(shí)現(xiàn)模糊查詢(xún)圖書(shū)信息功能,涉及php使用mysql的like查詢(xún)語(yǔ)句進(jìn)行模糊查詢(xún)以及mysql_num_rows進(jìn)行結(jié)構(gòu)統(tǒng)計(jì)的相關(guān)操作技巧,需要的朋友可以參考下2018-05-05PHP+jquery實(shí)時(shí)顯示網(wǎng)站在線(xiàn)人數(shù)的方法
這篇文章主要介紹了PHP+jquery實(shí)時(shí)顯示網(wǎng)站在線(xiàn)人數(shù)的方法,較為詳細(xì)的分析了實(shí)時(shí)顯示在線(xiàn)人數(shù)的原理與代碼實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01PHP使用DOM和simplexml讀取xml文檔的方法示例
這篇文章主要介紹了PHP使用DOM和simplexml讀取xml文檔的方法,結(jié)合實(shí)例形式分析了php使用DOM及simplxml針對(duì)xml文件的創(chuàng)建、載入、讀取等相關(guān)操作技巧,需要的朋友可以參考下2017-02-02PHP正則表達(dá)式 /i, /is, /s, /isU等介紹
PHP正則表達(dá)式 /i, /is, /s, /isU等,都代表著什么意思,你知道嗎?下面為大家詳細(xì)介紹下2014-10-10php實(shí)現(xiàn)通過(guò)stomp協(xié)議連接ActiveMQ操作示例
這篇文章主要介紹了php實(shí)現(xiàn)通過(guò)stomp協(xié)議連接ActiveMQ操作,結(jié)合實(shí)例形式分析了stomp擴(kuò)展安裝及使用stomp擴(kuò)展連接ActiveMQ具體操作技巧,需要的朋友可以參考下2020-02-02php字符串截取函數(shù)mb_substr用法實(shí)例分析
這篇文章主要介紹了php字符串截取函數(shù)mb_substr用法,結(jié)合實(shí)例形式分析了php使用mb_substr針對(duì)中文字符串截取與編碼控制相關(guān)操作技巧,需要的朋友可以參考下2019-06-06