PHP中simplexml_load_string函数使用说明
作者:bea
先用一段代码重现一下问题 乍一看,结果很让人费解: 代码如下: <?php $string = <<<EOF <data> <foo><bar>hello</bar></foo> <foo><bar>world</bar></foo> </data> EOF; $data = simplexml_load_str
先用一段代码重现一下问题
乍一看,结果很让人费解:
代码如下:
<?php
$string = <<<EOF
<data>
<foo><bar>hello</bar></foo>
<foo><bar>world</bar></foo>
</data>
EOF;
$data = simplexml_load_string($string);
print_r($data);
print_r($data->foo);
?>
乍一看,结果很让人费解:
代码如下:
SimpleXMLElement Object
(
[foo] => Array
(
[0] => SimpleXMLElement Object
(
[bar] => hello
)
[1] => SimpleXMLElement Object
(
[bar] => world
)
)
)
SimpleXMLElement Object
(
[bar] => hello
)
明明print_r显示foo是一个有两个bar元素的数组,但是最后却仅仅显示了一个bar元素!
原因其实很简单,在如上所示simplexml_load_string的结果里,foo并不是数组,而是一个迭代对象!
可以这样确认:
代码如下:
foreach ($data->foo as $v) print_r($v);
foreach ($data->children() as $v) print_r($v);
看来,print_r或者var_dump之类的表象并不完全可信,自己多留心吧。
有用 | 无用
乍一看,结果很让人费解:
代码如下:
<?php
$string = <<<EOF
<data>
<foo><bar>hello</bar></foo>
<foo><bar>world</bar></foo>
</data>
EOF;
$data = simplexml_load_string($string);
print_r($data);
print_r($data->foo);
?>
乍一看,结果很让人费解:
代码如下:
SimpleXMLElement Object
(
[foo] => Array
(
[0] => SimpleXMLElement Object
(
[bar] => hello
)
[1] => SimpleXMLElement Object
(
[bar] => world
)
)
)
SimpleXMLElement Object
(
[bar] => hello
)
明明print_r显示foo是一个有两个bar元素的数组,但是最后却仅仅显示了一个bar元素!
原因其实很简单,在如上所示simplexml_load_string的结果里,foo并不是数组,而是一个迭代对象!
可以这样确认:
代码如下:
foreach ($data->foo as $v) print_r($v);
foreach ($data->children() as $v) print_r($v);
看来,print_r或者var_dump之类的表象并不完全可信,自己多留心吧。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- php循环检测目录是否存在并创建(循环创建目录)
- 全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
- Discuz Uchome ajaxpost小技巧
- php INI配置文件的解析实现分析
- PHP strncasecmp字符串比较的小技巧
- php simplexmlElement操作xml的命名空间实现代码
- array_multisort实现PHP多维数组排序示例讲解
- PHP 设置MySQL连接字符集的方法
- php array_unique之后json_encode需要注意
- 从php核心代码分析require和include的区别
- 深入理解PHP之require/include顺序 推荐
- PHP中foreach循环中使用引用要注意的地方
- PHP开发中四种查询返回结果分析
- linux下删除7天前日志的代码(php+shell)
- PHP中=赋值操作符对不同数据类型的不同行为
- 完美实现GIF动画缩略图的php代码
- php实现无限级分类实现代码(递归方法)
- php下尝试使用GraphicsMagick的缩略图功能
- PHP读取XML值的代码(推荐)