亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

大俠,幫忙看看,為什么不行呀,是哪里出錯了??!

<?php$arr=array("aa","bbs","good","ser","uu","ser","ser","ser","ser","bbs","good");print_r($arr);echo "<br/>";//去除數組重復的值function oc($arr){if(!is_array($arr)){echo"不是一個數組";return false;}$i=0;foreach($arr as $v){$myarr[$i++]=$v;}for($i=0;$i<(count($myarr)-1);$i++){for($j=$i+1;$j<count($myarr);$j++){if($myarr[$i]==$myarr[$j]){for($k=$j;$k<(count($myarr)-1);$k++){$myarr[$k]=$myarr[$k+1];}unset($myarr[$k]);//刪除最后一個。}}}return $myarr;}$array=oc($arr);print_r($array);?>
查看完整描述

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 )

查看完整回答
反對 回復 2023-03-06
?
湖上湖

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 高級教程出現多維數組。 


查看完整回答
反對 回復 2023-03-06
?
拉丁的傳說

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)

 


查看完整回答
反對 回復 2023-03-06
  • 3 回答
  • 0 關注
  • 162 瀏覽

添加回答

了解更多

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號