• 技术文章 >php教程 >php手册

    PHP中simplexml_load_string函数使用说明

    2016-06-13 12:12:18原创446

    先用一段代码重现一下问题
    乍一看,结果很让人费解:

    复制代码 代码如下:


    $string = <<
    hello
    world

    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之类的表象并不完全可信,自己多留心吧。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:php xml 入门学习资料 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • JavaScript+PHP应用一:网页• PHP之判断用户语言跳转网页• PHP代码:Http断点续传的实现例子• php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)• 《PHP边学边教》(02.Apache+PHP环境配置下篇)
    1/1

    PHP中文网