Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php+xpath以文本形式获取节点值_Php_Xpath - Fatal编程技术网

使用php+xpath以文本形式获取节点值

使用php+xpath以文本形式获取节点值,php,xpath,Php,Xpath,如何在PHP中使用xpath获取Xml节点的字符串值? 我需要RTM,但有更复杂的情况,使用foreach我只需要我的节点文本。 XML: 我只需要这个值。作为浮点值。返回与XPath查询匹配的元素数组 这意味着,如果只有一个元素,则仍然必须使用数组,并提取其第一个元素: var_dump($EurToday[0]); 但这将获得一个SimpleXMLElement对象: 要获取它包含的浮点值,必须将其转换为浮点值-例如,使用: 让你得到你想要的: float 17.4619 附带说

如何在PHP中使用xpath获取Xml节点的字符串值? 我需要RTM,但有更复杂的情况,使用foreach我只需要我的节点文本。 XML:

我只需要这个值。作为浮点值。

返回与XPath查询匹配的元素数组

这意味着,如果只有一个元素,则仍然必须使用数组,并提取其第一个元素:

var_dump($EurToday[0]);
但这将获得一个SimpleXMLElement对象:

要获取它包含的浮点值,必须将其转换为浮点值-例如,使用:

让你得到你想要的:

float 17.4619
附带说明:在尝试使用xpath方法的返回值之前,应检查xpath方法在出现错误时是否返回false,或者在没有与查询匹配的情况下是否返回空数组。

返回与xpath查询匹配的元素数组

这意味着,如果只有一个元素,则仍然必须使用数组,并提取其第一个元素:

var_dump($EurToday[0]);
但这将获得一个SimpleXMLElement对象:

要获取它包含的浮点值,必须将其转换为浮点值-例如,使用:

让你得到你想要的:

float 17.4619
作为旁注:在尝试处理xpath方法的返回值之前,您应该检查xpath方法在出现错误时是否返回false,或者在没有匹配查询的情况下是否返回空数组

请参阅部分:选择所有价格

/bookstore/book/price/text()
文本似乎得到了你想要的东西。PHP中的等效项似乎是savexml,因此:

$EurToday = (float) $xmlToday->xpath("/ValCurs/Valute[@ID='47']/Value/savexml()");
请参阅部分:选择所有价格

/bookstore/book/price/text()
文本似乎得到了你想要的东西。PHP中的等效项似乎是savexml,因此:

$EurToday = (float) $xmlToday->xpath("/ValCurs/Valute[@ID='47']/Value/savexml()");

有没有办法直接在Xpathála../Value/string中指定它?考虑到手册上说引用会返回一个SimpleXMLElement对象数组,或者在出现错误时返回FALSE,我认为这是不可能的。De rien:-et vous pouvez/tu peux laisser tomber le monsieur^^^-不客气:-先生,您可以放弃协议。对先生-有没有办法直接在Xpathála../Value/string中指定它?考虑到手册上说引用会返回一个SimpleXMLElement对象数组,或者在出现错误时返回FALSE,我认为这是不可能的。De rien:-et vous pouvez/tu peux laisser tomber le monsieur^^^-不客气:-先生,您可以放弃协议。对先生-+你可能没有回答这个问题,但你确实回答了我的呵呵+1,你可能没有回答这个问题,但你确实回答了我的呵呵