如果重复多次则删除数组项,Php

时间:2019-01-08 06:49:38

标签: php

我有一个数组,它有重复项。因此,我尝试删除重复的项目。例如:

$链接:

  string(35) "/mjr/semba-tower/outline/index.html"
  [1]=>
  string(38) "/mjr/mc-futsukaichi/outline/index.html"
  [2]=>
  string(31) "/mjr/chihaya/outline/index.html"
  [3]=>
  string(35) "/mjr/semba-tower/outline/index.html"

您在阵列中看到2个semba塔,我想删除if之一。 我试过了,但是输出返回0项。

$output = [];
        foreach(array_count_values($links) as $value => $count)
        {
            if($count == 1)
            {
                $output[] = $value;
            }
        }

        var_dump($output); 

还有其他方法可以解决此问题吗?

1 个答案:

答案 0 :(得分:1)

Use the PHP array_unique() function

您可以使用PHP array_unique()函数删除重复的元素或形成数组的vlaues。如果数组包含字符串键,则此函数将保留每个值遇到的第一个键,并忽略所有后续键。

$links = array(
    "/mjr/semba-tower/outline/index.html",
    "/mjr/mc-futsukaichi/outline/index.html",
    "/mjr/chihaya/outline/index.html",
    "/mjr/semba-tower/outline/index.html"
);

// Deleting the duplicate items
$result = array_unique($links);
print_r($result);

输出:

Array ( [0] => /mjr/semba-tower/outline/index.html [1] => /mjr/mc-futsukaichi/outline/index.html [2] => /mjr/chihaya/outline/index.html )