downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

xpath_eval> <domxml_xslt_version
[edit] Last updated: Fri, 10 Feb 2012

view this page in

xpath_eval_expression

(PHP 4)

xpath_eval_expressionCalcule un chemin XPath à partir d'une chaîne

Description

XPathObject XPathContext::xpath_eval_expression ( string $expression [, domnode $contextnode ] )
XPathObject xpath_eval_expression ( XPathContext $xpath_context , string $expression [, domnode $contextnode ] )

Exemple #1 Exemple avec xpath_eval_expression()

<?php

include("example.inc");

if (!
$dom domxml_open_mem($xmlstr)) {
    echo 
"Erreur lors de l'analyse du document\n";
    exit;
}

$xpath xpath_new_context($dom);
var_dump(xpath_eval_expression($xpath'/chapter/@language'));

?>

L'exemple ci-dessus va afficher :

object(XPathObject)(2) {
   ["type"]=>
   int(1)
   ["nodeset"]=>
   array(1) {
     [0]=>
     object(domattribute)(5) {
       ["type"]=>
       int(2)
       ["name"]=>
       string(8) "language"
       ["value"]=>
       string(2) "en"
       [0]=>
       int(7)
       [1]=>
       int(138004256)
     }
  }
}

Voir aussi xpath_eval().



add a note add a note User Contributed Notes xpath_eval_expression
trotters213 at msn dot com 15-Jan-2009 02:42
For those who use PHP5 and the domxml module of PECL : this function doesn't return the same thing if the result is "empty".

Look at this example using the code and the XML file  :
<?php
/* ...
... code to get a xpath ...
... */
$ret = xpath_eval_expression($xPath, "/some/thing | /other/thing");
var_dump($ret);
?>

If the xpath doesn't match anything :
- In PHP4, this code displays
bool(false)

- In PHP5 (with PECL domxml module) , this code displays
object(XPathObject)#25 (2) {
  ["type"]=>
  int(1)
  ["nodeset"]=>
  array(0) {
  }

which is NOT false !!!

 
show source | credits | sitemap | contact | advertising | mirror sites