[精讚] [會員登入]
5262

PHP 移除陣列中的元素

要移除陣列中的其中一項元素

分享此文連結 //n.sfs.tw/13023

分享連結 PHP 移除陣列中的元素@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 12:24:42 最後編修
2019-01-11 18:28:08 By 張○○
 

自動目錄

假設一個全數字的陣列

  $ar=array("one","two","three","four","seven","eleven");

我想要移除其中的 "seven" 這個元素,

結果陣列要是

  $arr=array("one","two","three","four","eleven");

 

使用函數

$ar=array("one","two","three","four","seven","eleven");

if (($key = array_search("seven", $ar)) !== false) {
    unset($ar[$key]);
}

 

使用迴圈

$n = sizeof($ar);
for( $ii=0; $ii <$n; $ii++){
    if( $ar[$ii] === "seven") unset($ar[$ii]);
}

注意第三行是 三個等號的運算子 '==='

基本上用迴圈+unset ,不旦直覺而且簡單快速;但是使用函數也可以。

 

參考資料

[1] https://stackoverflow.com/questions/7225070/php-array-delete-by-value-not-key

END

你可能感興趣的文章

[PHP>7.3] switch中的 Did you mean to use "continue 2"? 除錯 這近更新 PHP到7.3版以後,出現這樣的錯:targeting switch is equivalent to "break". Did you mean to use "continue 2"?解決方法

[phpmyadmin] 錯誤:您應升級到 MySQL 5.5.0 或更新版本 使用phpmyadmin4出現錯誤:您應升級到 MySQL 5.5.0 或更新版本的解決方式

[PHP] 將UTF8中文字轉成10進位或16進位數值 原本為了處理 preg_match 中文字的問題[2],用php把中文字轉換成10進位和6進位的數值編碼

[PHP] 如何寫callback function 召回函數(回呼函數) PHP如何寫召回函數或回呼函數(callback function)?

[PHP] 移除檔案的UTF8 BOM 移除檔案的UTF8 BOM

[Smarty5] 如何在樣版中使用php本身的函式 解決 smarty5版後不能直接叫用 php函式的問題

隨機好文

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

PHP for sphinx 函式庫安裝 PECL/sphinx PHP>= 5.2.2 已經能原生支援 sphinx,可是預設的沒有裝,我們得自己裝才能用

Linux shell 的date表示法 linux下SHELL中的date表示法

APACHE的記錄檔格式 LogFormat 語法 在APACHE中有定義一些記錄的語法模版 在 /etc/httpd/conf/httpd.conf 中: LogForm

[NetBeans] 使用git複製別人的專案 NetBeans使用git複製別人的專案及版本控制