Есть двухступенчатый xml (Прайс лист), 1 ступень категории товаров, например: Код (Text): [1] [0] [name] [id] [1] [name] [id] [2] [name] [id] [2] [0] [name] [id] [1] [name] [id] Так вот надо собрать все теги [id] из последней ступени, проблема заключается в том, что такой же идентификатор присутствует и в первой ступени, как бы: Код (Text): <category> <name>TVs</name> <id>1</id> <products> <name>TVs</name> <id>1</id> </products> </category>
Вот часть прайс листа: Извиняюсь за беспорядок :{ HTML: <?xml version="1.0"?> <root> <application> <name>acp</name> <language>lv</language> <module>components</module> <submodule>index</submodule> <error/> </application> <components> <item> <id>32592</id> <code>1</code> <group/> <groupId>0</groupId> <name>1</name> <vendor/> <vendorId/> <itemPrice>0</itemPrice> <packPrice>0</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>0</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item> <subgroup> <name> CCD camera without lens</name> <id>2803</id> <item> <id>32590</id> <code>vgcrc202</code> <group> </group> <groupId>307</groupId> <name>SONY</name> <vendor>Corsair</vendor> <vendorId>812</vendorId> <itemPrice>0</itemPrice> <packPrice>0</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>0</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item> <item> <id>32589</id> <code>vgcrc202.cek</code> <group> </group> <groupId>307</groupId> <name>SONY DESKTOP VGC-RC202,PentiumD 920 2.8Ghz,GF 6600</name> <vendor>Corsair</vendor> <vendorId>812</vendorId> <itemPrice>0</itemPrice> <packPrice>0</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>0</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item> </subgroup> <subgroup> <name>Battery chargers</name> <id>1822</id> <item> <id>33858</id> <code>02NBBC33368EU</code> <group>Accessories</group> <groupId>83</groupId> <name>Kensington 4-in-1 Car Charger for iPod</name> <vendor>NB</vendor> <vendorId>847</vendorId> <itemPrice>17.5</itemPrice> <packPrice>17.5</packPrice> <packItems>1</packItems> <stock>2</stock> <date/> <warranty>12</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>1</new> <packPresent>0</packPresent> </special> </item> <item> <id>35886</id> <code>02NBBC33185EU</code> <group>Accessories</group> <groupId>83</groupId> <name>Kensington Digital FM Transmitter/Auto Charger for iPod</name> <vendor>NB</vendor> <vendorId>847</vendorId> <itemPrice>36.5</itemPrice> <packPrice>36.5</packPrice> <packItems>1</packItems> <stock>1</stock> <date/> <warranty>12</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>1</new> <packPresent>0</packPresent> </special> </item> </subgroup> <subgroup> <name>MULTIPORTS</name> <id>1824</id> <item> <id>2412</id> <code>02iwmpcr-i530rw</code> <group>Accessories</group> <groupId>83</groupId> <name>InWin CR-i530 WHITE Internal Card Reader/USB2.0/Audio/1934/retail/20vnt./dz.</name> <vendor>InWin</vendor> <vendorId>252</vendorId> <itemPrice>10</itemPrice> <packPrice>10</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>12</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item> </subgroup> <subgroup> <name>HDD Racks</name> <id>1825</id> <item> <id>18145</id> <code>02dgHDda50214</code> <group>Accessories</group> <groupId>83</groupId> <name>DIGITUS DA50214, SATA Haard Drive Removable Frame</name> <vendor>DIGITUS</vendor> <vendorId>339</vendorId> <itemPrice>6.8</itemPrice> <packPrice>6.8</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>12</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item> <item> <id>33558</id> <code>02dgHDDA-70407-1</code> <group>Accessories</group> <groupId>83</groupId> <name>DIGITUS DA-70407-1 SB, 2.5 drive case, USB2</name> <vendor>DIGITUS</vendor> <vendorId>339</vendorId> <itemPrice>6.5</itemPrice> <packPrice>6.5</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>12</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>1</price> <bundle>0</bundle> <action>1</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item> <item> <id>27128</id> <code>02dgHDDA-70514-1</code> <group>Accessories</group> <groupId>83</groupId> <name>DIGITUS DA-70514-1, External HDD Enclosure 3.5, S-ATA, USB 2.0 </name> <vendor>DIGITUS</vendor> <vendorId>339</vendorId> <itemPrice>30</itemPrice> <packPrice>30</packPrice> <packItems>1</packItems> <stock>0</stock> <date/> <warranty>12</warranty> <reserved>0</reserved> <ordered>0</ordered> <cart>0</cart> <special> <price>0</price> <bundle>0</bundle> <action>0</action> <present>0</present> <new>0</new> <packPresent>0</packPresent> </special> </item>
Есть деревянный мост, но отсутствуют некоторые части, как их собрать в единое? Покажи мне пример с выше упомянутым хмлом... я даж не знаю как эт осделать
Я сделал... PHP: preg_match_all('/<item> <id>(.*)<\/id> <code>/Usi', $content, $products_id, PREG_SET_ORDER);
Помойму этот xml очень легко разбирается вот этим, хотя, конечно, для повышения квалификации и общей крутости организма нада использовать регулярники.