我正在运行一个小的 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 文件中。
有任何想法吗?
对不起,这个长度。