You are here: Re: xpath XML and PHP4 « PHP Programming Language « IT news, forums, messages
Re: xpath XML and PHP4

Posted by petersprc on 12/01/06 03:29

For a relative path, try the tag name without a leading slash:

xpath_eval_expression($xpath,'line',$baseNode);

More on absolute and relative location paths:

http://www.w3schools.com/xpath/xpath_axes.asp

CptDondo wrote:
> I am working on an embedded platform. I have php4 installed along with
> libxml, so I have working DOMXML and xpath stuff...
>
> But I can't figure out how to use it.
>
> I am trying to get the base node of a schedule; I've attached a small
> portion of my XML file below. What I would like to do is to get the
> root of a schedule, and then iterate with foreach through all of the
> children. This is the function I came up with and of course it doesn't
> work. I don't understand how I am supposed to work with the object that
> the xpath_eval[_expression] returns. I've also tried the child_nodes
> method and that fails as well.
>
> Thanks,
>
> --Yan
>
> function loadSchedule($pivotID, $schedName, $schedNum) {
> $dom = domxml_open_file("/tmp/test.conf");
> $xpath = xpath_new_context($dom);
> // find base node for our schedule
> $pat = '//root/pivot[@id="' . $pivotID . '"]/'
> . $schedName . '[@id="' . $schedNum . '"]';
> print $pat;
> $baseNode = xpath_eval($xpath,$pat);
> var_dump($baseNode);
> $lines = xpath_eval_expression($xpath,'/line',$baseNode);
> var_dump($lines);
> print "\nOK\n";
> foreach($lines->nodeset as $line) {
> var_dump($line);
> }
> }
>
> <root>
> <pivot id="1">
> <water id="1">
> <line id="1">
> <bearingTo>120.0</bearingTo>
> <WetDry>1</WetDry>
> <FwdRev>0</FwdRev>
> <event>0</event>
> <speed>10</speed>
> </line>
> <line id="2">
> <bearingTo>180.0</bearingTo>
> <WetDry>1</WetDry>
> <FwdRev>1</FwdRev>
> <event>0</event>
> <speed>45</speed>
> </line>
> </water>
> <pivot>
> </root>

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация