and*_*ton 5 php xml xpath simplexml
看起来PHP中的simpleXML存在很多问题.我正在Windows上运行最新版本的php,我无法像在文档中那样使用simpleXML的基本示例.
我的xml文件是:
<?xml version="1.0" encoding="ISO-8859-1"?>
<programme>
<title>Billy Bushwaka</title>
<episodeNumber>2</episodeNumber>
<description>Billy Bushwaka entertains</description>
<url>play.swf</url>
</programme>
Run Code Online (Sandbox Code Playgroud)
我的PHP程序是:
<?php
$xml = simplexml_load_file("local.xml");
$result = $xml->xpath("//programme");
echo "Title: " . $result . "</br>";
?>
Run Code Online (Sandbox Code Playgroud)
我得到的是以下内容:
标题:数组
我如何获得"Title:Billy Bushwaka"?
没有重复的XML数据,所以我不想使用数组.
Jos*_*vis 20
首先,始终在它们代表的节点之后命名您的PHP变量.
// the root node is <programme/>
$programme = simplexml_load_file("local.xml");
Run Code Online (Sandbox Code Playgroud)访问子节点(节点)就好像它们是对象属性一样.
echo $programme->title;
Run Code Online (Sandbox Code Playgroud)如果有多个子项使用相同的名称,则可以指定其基于0的位置
// first <title/> child
echo $programme->title[0];
// create or change the value of the second <title/> child
$programme->title[1] = 'Second title';
Run Code Online (Sandbox Code Playgroud)访问属性就像它们是数组键一样
// <mynode attr="attribute value" />
echo $mynode['attr'];
Run Code Online (Sandbox Code Playgroud)XPath总是返回一个数组.
回到你的情况,访问该<title />节点的最佳方式是
$programme = simplexml_load_file("local.xml");
echo "Title: " . $programme->title;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16853 次 |
| 最近记录: |