simplexml and xpath - Need some help


Posted on 16th Feb 2014 07:03 pm by admin

Hello,

I am trying to parse an xml which comes back from Amazon and I am trying to know how many Browsenodes are shown within the XML.

I am using the classs Tarzan to get the xml from Amazon and the returned data is automatically placed into simplexml.

So currently I have this script

Code: $nodeinfo = $pas->browse_node_lookup($node);

$xmlNode = $nodeinfo ->body->BrowseNodes->BrowseNode->xpath('/Ancestors');
$nodeCount = count ( $xmlNode );
if($nodeCount){
echo "NodeCount".$nodeCount."n";
}
The $nodeinfo holds the following xml structure and I am only showing the part for the Nodes
Code: [BrowseNodes] => SimpleXMLElement Object
(
[Request] => SimpleXMLElement Object
(
[IsValid] => True
[BrowseNodeLookupRequest] => SimpleXMLElement Object
(
[BrowseNodeId] => 16197
)

)

[BrowseNode] => SimpleXMLElement Object
(
[BrowseNodeId] => 16197
[Name] => Epic
[Ancestors] => SimpleXMLElement Object
(
[BrowseNode] => SimpleXMLElement Object
(
[BrowseNodeId] => 16190
[Name] => Fantasy
[Ancestors] => SimpleXMLElement Object
(
[BrowseNode] => SimpleXMLElement Object
(
[BrowseNodeId] => 25
[Name] => Science Fiction & Fantasy
[Ancestors] => SimpleXMLElement Object
(
[BrowseNode] => SimpleXMLElement Object
(
[BrowseNodeId] => 1000
[Name] => Subjects
[IsCategoryRoot] => 1
[Ancestors] => SimpleXMLElement Object
(
[BrowseNode] => SimpleXMLElement Object
(
[BrowseNodeId] => 283155
[Name] => Books

with the Xpath I am trying to get the number how often "Ancestors" is shown. With this count I am able to goto my next programming script.

With my script this is not working, it always gives me a 1.

Is there a better way then how I have tried to solve it to count the Ancesters node?

Is there also a way how to read the Nodes backway to front? Amazon gives the Structure of an item from the lowest group to the highest.

I am kind of new with Simplexml and would really need some help.

Hope some one can help me out.

Best regards

No comments posted yet

Your Answer:

Login to answer
214 Like 40 Dislike
Previous forums Next forums
Other forums

2 decima places & How to reload my page
Hello There,

How do i put full-stop (.) after second figure from behind? ie if i have 123456

Mail sending is slow on server
Why mail is taking time to be send on apache-linux server

How can i steam a video on my PHP site? (non YouTube)
Basically I have a PHP site and don't want to give page rank to YouTube. I just want to stream a bas

database design
Hi,

I got a page which allow candidate to type in their previous working experience,
I let

post to self
Trying to get my form to submit to itself. However I am also trying to use an image for my submit bu

blank page.... nothing is happening.
I'm new to a lot of this but in the last 24hrs have learned a lot.
Installed latest version of my

imap: how to save a copy of sent emails to sent elements
Hello my friends,

I am writing an online emailing application with inbox outbox/sent elements

how do I show what a user have selected from a checkbox?
From my code below, how would i show which check boxes have been checked and which radio buttons sel

Having problemswith multithreading and prime numbers
I have an assignment when I'm suppose to do the following:

Write a multithreaded Java, Pt

echo $rows help
Hi all,

Hopefully something simple that I don't know!

I have this:

Code: [Selec

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash