如何使用xpath php获取唯一值?

如何使用xpath php获取唯一值?,php,xpath,Php,Xpath,这是我的xml。我需要从有代码的产品中找到唯一的值 <products> <product> <token><code>1</code></token> <productName>Product 1</productName> </product> <product> <token><co

这是我的xml。我需要从有代码的产品中找到唯一的值

<products>
    <product>
        <token><code>1</code></token>
        <productName>Product 1</productName>
    </product>
    <product>
        <token><code>2</code></token>
        <productName>Product 2</productName>
    </product>
    <product>
        <token><code>1</code></token>
        <productName>Product 2</productName>
    </product>
    <product>
        <token><code>3</code></token>
        <productName>Product 2</productName>
    </product>
</products>
我试着像下面这样 我将其加载到
$xd\u项中

foreach ( $xd_item->xpath('/product/token[not(code=preceding-sibling::token/code)]/token') as $n )
{ 
echo $n;
}
我需要像下面这样放出来

 product code : 1
    product Name : Product 1

    product code : 2
    product Name : Product 2

    product code : 3
    product Name : Product 3

您需要检查以下同级和前一同级,以确保
没有重复项:

/products/product[
               not(token/code=preceding-sibling::token/code) 
                    and 
               not(token/code=following-sibling::token/code)
                 ]
然后,您将能够循环通过上述XPath选择的
节点,并打印产品的任何所需部分,例如:

foreach ($xd_item->xpath(....) as $n)
{ 
    echo $n->token->code;
    echo $n->productName;
}