这是我第一次使用array_unique而且我不确定我是否做错了。
我有以下代码:
array_unique($items);
print_r($items);
foreach ($items as $item) {
echo "$item <br />";
}
print_r正在返回: 数组([0] =&gt; SimpleXMLElement对象([0] =&gt;地拉那)[1] =&gt; SimpleXMLElement对象([0] =&gt;地拉那)[2] =&gt; SimpleXMLElement对象([0] =&gt; ;地拉那))
echo in loop返回:Tirana Tirana Tirana
答案 0 :(得分:1)
SimpleXMLElement类说:__ toString()返回直接在此元素中的文本内容。不返回此元素的子元素内的文本内容。
从print_r输出看,文本看起来像是对象的子对象。如果文本不是孩子,看起来array_unique实际上会起作用。
array_unique: 当且仅当(字符串)$ elem1 ===(字符串)$ elem2时,才认为两个元素相等。在单词中:当字符串表示相同时。如果正如文档所说,SimpleXMLElement的文本不是对象的子文件,这应该有用。