国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php array_splice定義和用法

2024-09-04 11:46:28
字體:
來源:轉載
供稿:網友

關于php array_splice的用法以前有講過了,今天主要是詳細的講一下這個函數在應用中的一些詳細的具體的情況,有需要的朋友可以參考一下.

array_splice定義和用法

說明:array array_splice ( array &$input , int $offset [, int $length [, array $ replacement ]] )

array_splice() 把 input 數組中由 offset 和 length 指定的單元去掉,如果提供了 replacement 參數,則用 replacement 數組中的單元取代,返回一個包含有被移除單元的數組,注意 input 中的數字鍵名不被保留.

如果 offset 為正,則從 input 數組中該值指定的偏移量開始移除,如果 offset 為負,則從 input 末尾倒數該值指定的偏移量開始移除.

如果省略 length,則移除數組中從 offset 到結尾的所有部分,如果指定了 length 并且為正值,則移除這么多單元,如果指定了 length 并且為負值,則移除從 offset 到數組末尾倒數 length 為止中間所有的單元,小竅門:當給出了 replacement 時要移除從 offset 到數組末尾所有單元時,用 count($input) 作為 length.

如果給出了 replacement 數組,則被移除的單元被此數組中的單元替代,如果 offset 和 length 的組合結果是不會移除任何值,則 replacement 數組中的單元將被插入到 offset 指定的位置,注意替換數組中的鍵名不保留,如果用來替換的值只是一個單元,那么不需要給它加上 array(),除非該單元本身就是一個數組.

以下表達式以同樣方式修改了 $input:array_splice() 等價表達式 array_push($input,$x,$y)array_splice($input,代碼如下:

  1. count($input), 0, array($x$y))   
  2. array_pop($input)  array_splice($input, -1)   
  3. array_shift($input)  array_splice($input, 0, 1)   
  4. array_unshift($input$x$y)  array_splice($input, 0, 0, array($x$y))   
  5. $input[$x] = $y // 對于鍵名和偏移量等值的數組  array_splice($input, $x, 1, $y) 

返回一個包含被移除單元的數組.

例子1,代碼如下:

  1. <?php 
  2. $a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird"); 
  3. $a2=array(0=>"Tiger",1=>"Lion"); 
  4. array_splice($a1,0,2,$a2); 
  5. print_r($a1); 
  6. ?>  
  7. //輸出: 
  8. //Array ( [0] => Tiger [1] => Lion [2] => Horse [3] => Bird ) 

例子2,與例子 1 相同,但是輸出返回的數組,代碼如下:

  1. <?php 
  2. $a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird"); 
  3. $a2=array(0=>"Tiger",1=>"Lion"); 
  4. print_r(array_splice($a1,0,2,$a2)); 
  5. //開源代碼Vevb.com 
  6. ?>  
  7. //輸出: 
  8. Array ( [0] => Dog [1] => Cat )例子 3 

length 參數設置為 0,代碼如下:

  1. <?php 
  2. $a1=array(0=>"Dog",1=>"Cat"); 
  3. $a2=array(0=>"Tiger",1=>"Lion"); 
  4. array_splice($a1,1,0,$a2); 
  5. print_r($a1); 
  6. ?>  
  7. //輸出: 
  8. //Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat ) 

應用實例,代碼如下:

  1. $input1 = array("red""green""blue""yellow"); 
  2. $input2 = array_splice($input1, 2); 
  3. //打印剩下的 
  4. print_r($input1); 
  5. //打印被移走的 
  6. print_r($input2); 

因為這個函數的第一個參數是地址引用,返回值是被移走的部份,如果你只是想看剩下的,這樣寫就可以了,代碼如下:

  1. $input = array("red""green""blue""yellow"); 
  2. array_splice($input, 2); 
  3. print_r($input);  

我把手冊的例子加了一個說明:

  1. $input = array("red""green""blue""yellow"); 
  2. array_splice($input, 2); 
  3. //從第2個之后開始選,到剩下的全部,選中的移走。 
  4. //也就是 "blue", "yellow" 被選中 
  5. // $input is now array("red", "green") 
  6.  
  7. array_splice($input, 1, -1); 
  8. //從第1個之后開始選,到剩下的全部倒回來一個,選中的移走。 
  9. //也就是 "green", "blue",被選中 
  10. // $input is now array("red", "yellow") 
  11.  
  12. array_splice($input, 1, count($input), "orange"); 
  13. //從第1個之后開始選,到剩下的全部,選中的移走,在當前指針位置加一個新值。 
  14. //也就是 "green", "blue", "yellow" 被選中 
  15. // $input is now array("red", "orange") 
  16.  
  17. array_splice($input, -1, 1, array("black""maroon")); 
  18. //從最后1個之前開始選,往下選1個,選中的移走,在當前指針位置加進一個數組。 
  19. //也就是 "yellow" 被選中 
  20. // $input is now array("red", "green","blue", "black", "maroon") 
  21.  
  22. array_splice($input, 3, 0, "purple"); 
  23. //從第3個之后開始選,一個都不選,在當前指針位置插入新值。 
  24. //位置就在 "red", "green", "blue" 和 "yellow" 之間 
  25. // $input is now array("red", "green", "blue", "purple", "yellow");

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 福海县| 蒙自县| 青神县| 象山县| 应城市| 五河县| 乌兰县| 宁化县| 保康县| 小金县| 家居| 绥棱县| 习水县| 晋宁县| 沙田区| 龙山县| 三台县| 宜州市| 蚌埠市| 屏东县| 宁阳县| 凤庆县| 桦川县| 靖远县| 连云港市| 龙里县| 施甸县| 宁南县| 天峻县| 华宁县| 崇义县| 武强县| 娄烦县| 蓝田县| 冕宁县| 台中市| 双流县| 灵武市| 灵武市| 双流县| 伊金霍洛旗|