xml_parser_create_ns
(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
xml_parser_create_ns — 创建支持命名空间的 XML 解析器
说明
xml_parser_create_ns() 新建支持 XML 命名空间的解析器并返回可被其它 XML 函数使用的 XMLParser 实例。
参数
encoding
-
自动检测输入编码,因此
encoding
参数仅指定输出编码。默认输出字符集是 UTF-8。支持的编码有ISO-8859-1
、UTF-8
和US-ASCII
。 separator
-
使用名称空间感知的解析器标记参数传递给各种处理函数将由名称空间和标记名称组成,这些名称由
separator
中指定的字符串分隔。
返回值
返回新 XMLParser 实例。
+添加备注
用户贡献的备注 2 notes
jonnyNO at SPAM dot sanriowasteland dot net ¶
22 years ago
This is from the Expat Function Reference by Clark Cooper, which is a reference to the C api.
"XML_Parser XML_ParserCreateNS(const XML_Char*encoding, XML_Char sep)
Constructs a new parser that has namespace processing in effect. Namespace expanded element names and attribute names are returned as a concatenation of the namespace URI, sep, and the local part of the name. This means that you should pick a character for sep that can't be part of a legal URI."
(from http://www.xml.com/pub/a/1999/09/expat/reference.html)
So thats what this function is for. Now you know.
bishop at php dot net ¶
6 years ago
Internals has proposed[1] changing this extension from resource-based to object-based. When this change is made, xml_parser_create_ns will return an object, not a resource. Application developers are encouraged to replace any checks for explicit success, like:
<?php
$res = xml_parser_create_ns(/*...*/);
if (! is_resource($res)) {
// ...
}
?>
With a check for explicit failure:
<?php
$res = xml_parser_create_ns(/*...*/);
if (false === $res) {
// ...
}
[1]: https://marc.info/?l=php-internals&m=154998365013373&w=2
备份地址:http://www.lvesu.com/blog/php/function.xml-parser-create-ns.php