删除数组中的重复字符串

时间:2013-11-13 17:16:20

标签: php arrays

事实上即时工作在一个小的PHP脚本中,我使用简单的html dom来获取网站的一些标签,无论如何这是我正在使用的代码

 if( strpos($a, '#') !== false ) 
{
    if( strpos($a, 'page') !== false ){}
        else
        {
            if( strpos($a, '#') !== false ){}
                else{
                    $items[] = $a;
                }
        }
}

我想删除数组$items中的重复字符串。

3 个答案:

答案 0 :(得分:1)

为什么不检查字符串是否已被添加?

if( strpos($a, '#') !== false ) 
{
    if( strpos($a, 'page') !== false ){}
        else
        {
            if( strpos($a, '#') !== false ){}
                else{
                    if(!in_array($a, $items)){
                        $items[] = $a;
                    }
                }
        }
}

答案 1 :(得分:1)

这是来自php.net(http://us2.php.net/function.array-unique

的评论
<?php
    $input = array("a" => "green", "red", "b" => "green", "blue", "red");
    $result = array_unique($input);
    print_r($result);
?>

输出: 排列 (     [a] =&gt;绿色     [0] =&gt;红色     [1] =&gt;蓝色 )

谢谢Mark!

答案 2 :(得分:0)

如果由于某种原因无法检查已添加的项目(如前所述),您可以查看array_unique()方法。

/编辑: 这与问题无关,但是如果您发布的代码段是您的实际代码:您真的不应该使用if( strpos($a, 'page') !== false ){} else ...

只需反转条件并将代码放在if块中:

if (strpos($a, 'page') === false) {
    // your code here
}