Vic*_*rez 19 php xml simplexml
我见过很多编码器SimpleXML_load_string()
而不是SimpleXMLElement()
班级.使用前者对后者有什么好处?我已经阅读了关于simplexml的PHP手册.我无法理解它是什么.
任何帮助和指导(可能通过例子)将非常感谢.提前致谢.
Kin*_*nch 19
simplexml_load_string()
(顾名思义)从字符串加载xml并返回一个对象SimepleXMLElement
.这与使用类的通常构造函数没有区别.
更新:
SimpleXML::__construct()
有一个额外的参数(第三个)bool $data_is_url = false
.如果这是true
行为与simplexml_load_file()
(与公共流包装器一起)相同.因此,两个simplexml_load_*()
功能都涵盖相同的功能SimpleXML::__construct()
.
附加函数simplexml_load_*()
有第二个参数string $class_name = "SimpleXMLElement"
来指定要返回的对象的类.这不是功能的特定功能,因为你可以"使用"与通常的实例非常相似的东西
class MyXML extends SimpleXMLElement {}
$a = new MyXML($xml);
$b = simplexml_load_string($xml, 'MyXML');
Run Code Online (Sandbox Code Playgroud)
OOP和过程方法之间的区别在于函数返回false
错误,但构造函数抛出异常.
它主要是一个方便的包装。通过自己构建基本元素,您至少需要两行代码才能完成任何事情。使用simplexml_load_string()
单个表达式可能就足够了:
print simplexml_load_string($xml)->title;
Run Code Online (Sandbox Code Playgroud)
短于:
$e = new SimpleXMLElement($xml);
print $e->title;
Run Code Online (Sandbox Code Playgroud)
当然,函数签名也有细微的变化。
更新:和完全相同的长度
Run Code Online (Sandbox Code Playgroud)print(new SimpleXMLElement($xml))->title;
归档时间: |
|
查看次数: |
6804 次 |
最近记录: |