3 回答

TA貢獻1875條經驗 獲得超3個贊
rray_unique() 函數定義和用法
移除數組中的重復的值,并返回結果數組。
當幾個數組元素的值相等時,只保留第一個元素,其他的元素被刪除。
返回的數組中鍵名不變。
例子
<?php
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat");
print_r(array_unique($a));
?>
輸出:Array ( [a] => Cat [b] => Dog )

TA貢獻2003條經驗 獲得超2個贊
$arr = array(1,2,4,2,0,9,8,5);//定義一個數組。
$arr1 = $arr; //定義另一個數組和上一個數組一樣。
//循環第一個數組讓后循環第二個數組 用第一個數組的每個值和第二個數組比較如果相同就刪除,最后輸出第二個數組就行了。
for($i = 0;$i<count($arr);$i++){
for($j=$i+1;$j<count($arr);$j++){
if($arr[$i] == $arr[$j])
unset($arr1[$i]);
}
}
echo'<pre>';
print_r($arr1);
第二 如果允許使用array_uniqe()函數的話,直接array_uniqe(直接寫數組名就ok)。
在PHP中可以使用內置函數array_unique()來直接刪除重復元素,也可以使用array_flip()函數來間接刪除重復元素。
1.array_unique()函數
array_unique()函數可以移除數組中的重復的值,并返回結果數組;當幾個數組元素的值相等時,只保留第一個元素,其他的元素被刪除。
代碼示例:
<?php$result1 = array("a" => "green", "red", "b" => "green", "blue",
"red");var_dump($result1);$result2 = array_unique($result1);var_dump($result2);?>
2.array_flip()函數
array_flip()是反轉數組鍵和值的函數,它有個特性就是如果數組中有二個值是一樣的,那么反轉后會保留最后一個鍵和值,利用這個特性我們用他來間接的實現數組的去重。
代碼示例:
<?phpheader("content-type:text/html;
charset=utf-8");$a = array(1, 5, 2, 5, 1, 3, 2, 4, 5);// 輸出原始數組echo "原始數組
:";var_dump($a);// 。
通過使用翻轉鍵和值移除重復值$a = array_flip($a);
// 通過再次翻轉鍵和值來恢復數組元素$a = array_flip($a);// 重新排序數組鍵$a = array_values($a);// 輸出更新后的數組echo "更新數組 :";var_dump($a);?>
擴展資料:
在 PHP 中創建數組:
在 PHP 中, array() 函數用于創建數組:
array();
在 PHP 中,有三種數組類型:
索引數組 - 帶有數字索引的數組。
關聯數組 - 帶有指定鍵的數組。
多維數組 - 包含一個或多個數組的數組。
1、PHP 索引數組
有兩種創建索引數組的方法:
索引是自動分配的(索引從 0 開始):
$cars=array("porsche","BMW","Volvo");
或者也可以手動分配索引:
$cars[0]="porsche";
2、遍歷索引數組:
如需遍歷并輸出索引數組的所有值,可以使用 for 循環,就像這樣:
實例:
<?php
$cars=array("porsche","BMW","Volvo");
$arrlength=count($cars);
for($x=0;$x<$arrlength;$x++) {
echo $cars[$x];
echo "<br>";
}
?>
3、多維數組:
將在 PHP 高級教程出現多維數組。

TA貢獻1789條經驗 獲得超8個贊
$arr = array(1,2,4,2,0,9,8,5);//定義一個數組
$arr1 = $arr; //定義另一個數組和上一個數組一樣
//循環第一個數組讓后循環第二個數組 用第一個數組的每個值和第二個數組比較如果相同就刪除,最后輸出第二個數組就行了
for($i = 0;$i<count($arr);$i++){
for($j=$i+1;$j<count($arr);$j++){
if($arr[$i] == $arr[$j])
unset($arr1[$i]);
}
}
echo'<pre>';
print_r($arr1);
第二 如果允許使用array_uniqe()函數的話
直接array_uniqe(直接寫數組名就ok)
- 3 回答
- 0 關注
- 162 瀏覽