您好,登錄后才能下訂單哦!
使用php如何刪除一維數組的值?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
php 刪除一維數組中某一個值元素的操作方法
1. 自己寫for循環
從array里去掉$tmp這個元素的值
<?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); ?>
此時
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); ?>
此時結果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
array_merge()也可以實現同樣的效果
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_merge($arr); print_r($arr); ?>
此時結果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
2.優先使用php自帶函數,因為那是用C實現的,比自己寫效率高。
使用array_search和array_splice,這里array_splice自動實現重置序列值。
$key=array_search($tmp ,$arr); array_splice($arr,$key,1); var_dump($arr);
此時結果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
最佳實踐
$arr = array_merge(array_diff($arr, array($tmp))); var_dump($arr);
結果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
這里,如果數組元素是復雜數據結構,同樣能夠實現比較。當然數據本身仍然是一維的。
上面的例子中$tmp是一個值,如果$tmp是一個數組或者其他復雜數據結構,從$array中刪除所有$tmp包含的元素,上面的方法同樣有效
$arr = array_merge(array_diff($arr, $tmp)); var_dump($arr);
一、phpStudy,是一個新手入門最常用的開發環境。二、WampServer,WampServer也同樣的也是和phpStudy一樣操作簡單對小白比較友好。三、XAMPP,XAMPP(Apache+MySQL+PHP+PERL)是一個功能強大的建站集成軟件包;四、MAMP,MAMP分為兩種MAMP和MAMP Pro for Mac。五、寶塔面板,寶塔面板是一款服務器管理軟件,支持windows和linux系統。六、UPUPW,UPUPW是目前Windows平臺下最具特色的Web服務器PHP套件。
關于使用php如何刪除一維數組的值問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。