探討如何?PHP刪除數組元素_PHP教程

來源:互聯網
上載者:User
對於學習開始我參照其他方法,用unset,但是有個缺陷.如$a是一個數組:

 
  1. $a=array("red", "green", "blue", "yellow");
  2. count($a); //得到4
  3. unset($a[1]); //刪除第二個元素
  4. count($a); //得到3
  5. echo $a[2]; //數組中僅有三個元素,本想得到最後一個元素,但卻得到blue,
  6. echo $a[1]; //無值
  7. ?>

也就是說在刪除數組中的元素後,數組中的元素個數(用count()得到)變了,但數組下標卻沒有重新排列,還必須用PHP刪除數組元素前的key來操作相應的值.

後來我採用另一種方法,其實根本就不叫"方法",是用PHP4現成的函數array_splice().

 
  1. $a=array("red", "green", "blue", "yellow");
  2. count ($a); //得到4
  3. array_splice($a,1,1); //刪除第二個元素
  4. count ($a); //得到3
  5. echo $a[2]; //得到yellow
  6. echo $a[1]; //得到blue
  7. ?>

把這個程式和前一個相對比,就可以看到,array_splice()不僅刪除了元素,還把元素重排了,這樣在數組各元素中間就不會有空值(如前例中的$a[1]).

array_splice()其實是替換數組元素的函數,但如果不加替換值就簡單的PHP刪除數組元素.下面是array_splice()的用法:

 
  1. array array_splice (array input, int offset
    [, int length [, array replacement]])

參數input是要操作的數組;offset是從第幾個元素開始,為正時從第一個元素開始數,為負時從最後一個元素開始數;length為要替換/刪除元素的個數,省略時就從offset開始到數組結束,也是可正可負,原理和offset一樣;relacement為要替換的值.

這個PHP刪除數組元素的函數已經是PHP4的標準函數了,但是在我手中的PHP4手冊中卻提都沒提,我是下載的php.net最新的手冊中才找到的.不看不知道,一看嚇一跳,我手中的那個PHP4gb(相信也是大部分人手中的)實在是太老了,很多函數都沒有.要知道PHP可是以函數齊全而聞名的,如果我們連很多函數都不知道的話,又怎麼說把國內編程水平提上去呢?真希望能有一群PHP熱忠者能再次翻譯最新的PHP手冊.我在"艾德技術中心"


http://www.bkjia.com/PHPjc/446338.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/446338.htmlTechArticle對於學習 開始我參照其他方法,用unset,但是有個缺陷.如$a是一個數組: ? $ a = array ("red","green","blue","yellow"); count($a);//得到4 unset($a[1]);//刪除第...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.