PHP array_unique的行为不符合预期

时间:2013-07-31 19:36:16

标签: php xml array-unique

我正在运行一个PHP脚本。
它基本上放置XML文件的内容并将其分配给变量 然后我使用LIB_parse.php中的parse数组函数创建一个包含我想要使用的所有XML标记和值的数组:

function parse_array($string, $beg_tag, $close_tag)
{
    preg_match_all("($beg_tag(.*)$close_tag)siU", $string, $matching_data);
        //preg_match_all("($beg_tag(.*)($beg_tag(.*)$close_tag)+(.*)$close_tag)siU", $string, $matching_data);
    return $matching_data[0];
}

这一切都运作良好。

但我想要做的是从这个现在巨大的数组中删除所有重复项 我是通过Excel完成的,我知道它应该给我3945个XML标签和值 但是当我通过array_unique运行数组时,它返回一个包含3945行的数组,但其中只有大约400个实际包含我想要的XML标记和值,其他的是空行。

$value = file_get_contents("myXMLfile.xml");
$array = parse_array($value, "<marker", "/>");
$clean_array = array_unique($array);

然后我使用循环将数组的值放入另一个XML文件中。

有什么想法吗?

对不起这个长度。

0 个答案:

没有答案