删除数组中的重复元素不起作用[重复]

问题描述 投票:1回答:1

我的问题是array_unique()对我不起作用。所以我尝试这段代码:

<?php
$days_array = array( 'sturday', 'sunday' , 'monday', 'tuesday', 'thursday' , 'sunday' , 'tuesday' , 'tuesday');
$lengh = count($days_array);
for($p=0 ; $p < $lengh ; $p++){
    for($d=0 ; $d < $lengh ; $d++){
        if($p !== $d){
            if($days_array[$p] === $days_array[$d]){
                unset($days_array[$d]);
            }
        }
    }
}

为什么总是出现此错误? :

Notice: Undefined offset: 5 in C:\wamp64\www\TB\days.php on line 8

第8行是代码为if($days_array[$p] === $days_array[$d])的位置

非常感谢您的帮助。

php arrays statements
1个回答
0
投票

这是工作代码

$inputArray = array( 'sturday', 'sunday' , 'monday','monday', 'tuesday', 'thursday' , 'sunday' , 'tuesday' , 'tuesday');
$outputArray = array();

foreach($inputArray as $inputArrayItem) {
    foreach($outputArray as $outputArrayItem) {
        if($inputArrayItem == $outputArrayItem) {
            continue 2;
        }
    }
    $outputArray[] = $inputArrayItem;
}
print_r($outputArray);

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.