php利用了 遍歷查詢 刪除重復數組元素


幾種php 刪除數組元素方法在很多情況下我們的數組會出現重復情況,

那我們刪除數組中一些重復的內容怎么辦,這些元素我必須保持他唯一,所以就想辦法來刪除它們,

下 面利用了遍歷查詢來刪除重復數組元素的幾種方法幾種php 刪除數組元素方法在很多情況下我們的數組會出現重復情況,那我們刪除數組中一些重復的內容怎么辦,這些元素我必須保持他唯一,所以就想辦法來刪除它們,下 面利用了遍歷查詢來刪除重復數組元素的幾種方法。

在很多情況下我們的數組會出現重復情況,那我們刪除數組中一些重復的內容怎么辦,這些元素我必須保持他唯一,所以就想辦法來刪除它們,下面利用了遍歷查詢來刪除重復數組元素的幾種方法。

看一完整刪除重復數組實例

//刪除數組中的一個元素

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function array_remove_value(&$arr, $var){
foreach ($arr as $key => $value) {
if (is_array($value)) {
array_remove_value($arr[$key], $var);
else {
$value = trim($value);
if ($value == $var) {
unset($arr[$key]);
else {
$arr[$key] = $value;
}
}
}
}

$a是一個數組:

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

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

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

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

 

 

方法二

刪除數組中重復元素的函數

1
2
3
4
5
6
7
8
9
function delmember(&$array, $id)
{
$size = count($array);
for($i = 0; $i <$size - $id - 1; $i ++)
{
$array[$id + $i] = $array[$id + $i + 1];
}
unset($array[$size - 1]);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM