繁体   English   中英

通过PHP中的SimpleXMLElement对象进行迭代

[英]iterate through SimpleXMLElement Object in php

我无法遍历此xml文件。 我正在使用simplexml_load_file() 有没有人有办法解决吗? 谢谢你的时间。 我是新手!

SimpleXMLElement Object
(
[ReferenceMember] => SimpleXMLElement Object
    (
        [Agency] => SimpleXMLElement Object
            (
                [ID] => xx
                [ActivityID] => xxxxx
                [ActivityReferenceID] => xxxxx
            )

    )

[Member] => SimpleXMLElement Object
    (
        [Agency] => SimpleXMLElement Object
            (
                [ID] => xx
                [ActivityID] => xxxx
                [ActivityReferenceID] => xxxx
            )

    )

[SubmissionID] => xxxx
[Company] => xxxxx

[Emails] => SimpleXMLElement Object
    (
        [Email1] => xxxx@xxx.com
    )

[UploadedDate] => 24/11/14
)

这就是我尝试过的

$data = simplexml_load_file($file);

foreach ($data as $item) {

        foreach ($item->item as $entry) {
            $this->set_date($entry->UploadedDate);

        }

}

$array = array(
            "DATE" => $this->get_date()

        );

var_dump($array);

这就是我得到的

array(1) {
  ["DATE"]=>
  NULL
}

当我尝试获取对象值时

var_dump($date->UploadedDate);

object(SimpleXMLElement)#9 (1) {
  [0]=>
  string(8) "24/11/14"
}

根据您提供给我们的信息,您根本不需要循环,因为您只想要一个答案,并且您确切地知道在哪里可以找到它:

$data = simplexml_load_file($file);
$this->set_date( (string)$data->UploadedDate );

注意,我在这里使用(string) 这将从发现的值中删除SimpleXML的魔力,这可能是您以后想要的。 echo为您执行此操作,因此echo $data->UploadedDate; 将显示您的期望。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM