Extracting data from XML using SimpleXML, third-le

2019-09-08 04:08发布

问题:

I'm trying to extract data from an xml file. The problem is I know how to do the second level, but not a third level.

Here's a sample test of the XML

<createacct>
  <result>
    <options>
     <ns></ns>
    </options>
    <rawout>
    stuff
    </rawout>
    <status>1</status>
    <statusmsg>success</statusmsg>
  </result>
</createacct>

Now, how would I extract the data from: <rawout>, <status> and <statusmsg>? I may need to look at <result><options><ns> as well.

I suppose maybe:

$yop = new SimpleXMLElement ($xmlFile);
$rawout = array((string) $yop->rawout); // for rawout

and so forth for <status> and <statusmsg>. But what for <result><options><ns>?

回答1:

Well, this does the trick:

$xml->result[0]->options->ns