SimpleXML:选择具有特定属性值的元素在XML文档中,我有共享名称的元素,但是属性的值定义了它是什么类型的数据,我想从文档中选择所有具有一定值的元素。我是否需要使用XPath(如果需要,您可以建议正确的语法)还是有更优雅的解决方案?下面是一些XML示例:<object>
<data type="me">myname</data>
<data type="you">yourname</data>
<data type="me">myothername</data></object>我想选择所有的内容<data>标记<object>谁的类型是me.PS-我正试图用PHP与NetflixAPI进行接口-这对我的问题来说并不重要,但如果你想提出一个好的/更好的方法来这样做,我会全神贯注的。
2 回答
繁花如伊
TA贡献2012条经验 获得超12个赞
/object/data[@type="me"]
$myDataObjects = $simplexml->xpath('/object/data[@type="me"]');
object
//object/data[@type="me"]
慕姐4208626
TA贡献1852条经验 获得超7个赞
function query_attribute($xmlNode, $attr_name, $attr_value) { foreach($xmlNode as $node) { switch($node[$attr_name]) { case $attr_value: return $node; } }}
echo query_attribute($MySimpleXmlNode->Customer, "type", "human")->Name;
<Root><Customer type="human"><Name>Sam Jones</name></Customer></Root>
- 2 回答
- 0 关注
- 385 浏览
添加回答
举报
0/150
提交
取消