二十五岁时我们都一样愚蠢、多愁善感,喜欢故弄玄虚,可如果不那样的话,五十岁时也就不会如此明智。
标题:PHP simplexml_load_string() 函数
PHP simplexml_load_string() 函数
实例
转换形式良好的 XML 字符串为 SimpleXMLElement 对象,然后输出对象的键和元素:
<?php $note=<<<XML <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> XML; $xml=simplexml_load_string($note); print_r($xml); ?>定义和用法
simplexml_load_string() 函数转换形式良好的 XML 字符串为 SimpleXMLElement 对象。
语法
simplexml_load_string( _data,classname,options,ns,is_prefix_ );
参数 描述 _data_ 必需。规定形式良好的 XML 字符串。 _classname_ 可选。规定新对象的 class。 _options_ 可选。规定附加的 Libxml 参数。通过指定选项为 1 或 0(TRUE 或 FALSE,例如 LIBXML_NOBLANKS(1))进行设置。 可能的值: * LIBXML_COMPACT - 激活节点的优化配置(可加速应用程序) * LIBXML_DTDATTR - 设置默认的 DTD 属性 * LIBXML_DTDLOAD - 装载额外的子集 * LIBXML_DTDVALID - 验证 DTD 有效性 * LIBXML_NOBLANKS - 删除空节点 * LIBXML_NOCDATA - 将 CDATA 设置为文本节点 * LIBXML_NOEMPTYTAG - 扩展空标签(例如
到
),仅在 DOMDocument->save() 和 DOMDocument->saveXML() 函数中有效 * LIBXML_NOENT - 替代实体 * LIBXML_NOERROR - 不显示错误报告 * LIBXML_NONET - 装载文档时停止访问网络 * LIBXML_NOWARNING - 不显示警告报告 * LIBXML_NOXMLDECL - 当存储一个文档时放弃 XML 声明 * LIBXML_NSCLEAN - 删除多余的名称空间声明 * LIBXML_PARSEHUGE - 设置 XML_PARSE_HUGE 标志,用来放宽解析器的任何强制限制。这将影响诸如文档的最大深度和文本节点大小限制等。 * LIBXML_XINCLUDE - 使用 XInclude 替代 * LIBXML_ERR_ERROR - 获取可纠正的错误 * LIBXML_ERR_FATAL - 获取致命错误 * LIBXML_ERR_NONE - 不获取错误 * LIBXML_ERR_WARNING - 获取简单警告 * LIBXML_VERSION - 获取 libxml 版本(例如 20605 或 20617) * LIBXML_DOTTED_VERSION - 获取带点的 libxml 版本(例如 2.6.5 或 2.6.17)_ns_ 可选。规定命名空间前缀或 URI。 _is_prefix_ 可选。规定一个布尔值。如果 _ns_ 是前缀则为 TRUE,如果 _ns_ 是 URI 则为 FALSE。默认是 FALSE。 技术细节
返回值: 如果成功则返回 SimpleXMLElement 对象,如果失败则返回 FALSE。 PHP 版本: 5+ 实例 1
输出 XML 字符串中每个元素的数据:
<?php $note=<<<XML <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> XML; $xml=simplexml_load_string($note); echo $xml->to . "<br>"; echo $xml->from . "<br>"; echo $xml->heading . "<br>"; echo $xml->body; ?>运行实例 »
实例 2
输出 XML 字符串中每个子节点的元素名称和数据:
<?php $note=<<<XML <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> XML; $xml=simplexml_load_string($note); echo $xml->getName() . "<br>"; foreach($xml->children() as $child) { echo $child->getName() . ": " . $child . "<br>"; } ?>运行实例 »