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

首頁 > 開發 > PHP > 正文

PHP刪除數組中的特定元素的代碼

2024-05-04 23:14:50
字體:
來源:轉載
供稿:網友
比如下面的程序:

復制代碼 代碼如下:


<?php

$arr = array('apple','banana','cat','dog');

unset($arr[2]);
print_r($arr);

?>


程序運行結果:

復制代碼 代碼如下:

Array ( [0] => apple [1] => banana [3] => dog )


但是這種方法的最大缺點是沒有重建數組索引,就是說,數組的第三個元素沒了。
經過查資料后,原來PHP提供了這個功能,只不過很間接。這個函數是array_splice()。
為了使用方便,我封裝成了一個函數,方便大家使用:

復制代碼 代碼如下:


<?php

function array_remove(&$arr, $offset)
{
array_splice($arr, $offset, 1);
}

$arr = array('apple','banana','cat','dog');

array_remove($arr, 2);
print_r($arr);
?>


經過測試可以知道,2的位置這個元素被真正的刪除了,并且重新建立了索引。
程序運行結果:

復制代碼 代碼如下:


Array ( [0] => apple [1] => banana [2] => dog )


PHP array_splice() 函數
array_splice() 函數與 array_slice() 函數類似,選擇數組中的一系列元素,但不返回,而是刪除它們并用其它值代替。如果提供了第四個參數,則之前選中的那些元素將被第四個參數指定的數組取代。
最后生成的數組將會返回。
語法:array_splice(array,offset,length,array)
array:必需。規定數組。
offset:必需。數值。如果 offset 為正,則從輸入數組中該值指定的偏移量開始移除。如果 offset 為負,則從輸入數組末尾倒數該值指定的偏移量開始移除。
length:可選。數值。如果省略該參數,則移除數組中從 offset 到 結尾的所有部分。如果指定了 length 并且為正值,則移除這么多元素。如果指定了 length 且為負值,則移除從 offset 到數組末尾倒數 length 為止中間所有的元素。
array:被移除的元素由此數組中的元素替代。如果沒有移除任何值,則此數組中的元素將插入到指定位置。
如果函數沒有刪除任何元素 (length=0),則替代數組將從 start 參數的位置插入。
示例1:

復制代碼 代碼如下:


<?php
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,0,2,$a2);
print_r($a1);
?>
//output : Array ( [0] => Tiger [1] => Lion [2] => Horse [3] => Bird )


示例2:

復制代碼 代碼如下:


<?php
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
print_r(array_splice($a1,0,2,$a2));
?>
//output : Array ( [0] => Dog [1] => Cat )


示例3:

復制代碼 代碼如下:


<?php
// length 參數設置為 0
$a1=array(0=>"Dog",1=>"Cat");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,1,0,$a2);
print_r($a1);
?>
//output : Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat )

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巴里| 舟曲县| 郴州市| 聂拉木县| 得荣县| 邯郸市| 新河县| 东光县| 乌拉特中旗| 安阳市| 资溪县| 峨边| 民县| 麻栗坡县| 凌海市| 饶平县| 林周县| 昌宁县| 武山县| 加查县| 清涧县| 沙雅县| 满洲里市| 拜泉县| 安化县| 涞源县| 科技| 万州区| 郓城县| 绥德县| 齐齐哈尔市| 滨海县| 扶余县| 正安县| 湖州市| 鱼台县| 察隅县| 洛宁县| 康保县| 遂溪县| 青州市|