Tuesday, 20 August 2013

How to access the properties of an XML string converted to an object

How to access the properties of an XML string converted to an object

I used a web service that returns the result in XML format. The method
simplexml_load_string() was used to convert it to an object like this:
$xml = simplexml_load_string($result[$webresult]);
Below is a sample display using print_r($xml) :
SimpleXMLElement Object ( [record] => SimpleXMLElement Object ( [txnref]
=> 6113229211825720 [channel] => mastercard [amount] => 3000.00
[payment_date] => 8/17/2013 9:18:25 PM [payment_status] => successful
[field_values] => SimpleXMLElement Object ( [field_values] =>
SimpleXMLElement Object ( [field] => Array ( [0] => SimpleXMLElement
Object ( [names] => Frank [acct_desc] => False [acct_desc_order] => 0
[hidden] => False [defaultvalue] => SimpleXMLElement Object ( )
[xpath_field] => 0 ) [1] => SimpleXMLElement Object ( [amount] => 3000
[acct_desc] => False [acct_desc_order] => 0 [hidden] => False
[defaultvalue] => SimpleXMLElement Object ( ) [xpath_field] => 0 ) [2] =>
SimpleXMLElement Object ( [currency] => NGN [acct_desc] => False
[acct_desc_order] => 0 [hidden] => False [defaultvalue] =>
SimpleXMLElement Object ( ) [xpath_field] => 0 ) [3] => SimpleXMLElement
Object ( [email_address] => chibuzo.henry@gmail.com [acct_desc] => False
[acct_desc_order] => 0 [hidden] => False [defaultvalue] =>
SimpleXMLElement Object ( ) [xpath_field] => 0 ) [4] => SimpleXMLElement
Object ( [phone_number] => 08035653468 [acct_desc] => False
[acct_desc_order] => 0 [hidden] => False [defaultvalue] =>
SimpleXMLElement Object ( ) [xpath_field] => 0 ) [5] => SimpleXMLElement
Object ( [merch_txnref] => 134 [acct_desc] => False [acct_desc_order] => 0
[hidden] => False [defaultvalue] => SimpleXMLElement Object ( )
[xpath_field] => 0 ) ) ) ) [payment_status_description] => Transaction
Successful - Approved ) )
However, when I try to access the object $xml, this way:
$xml->amount;
it doesn't return any result. How do I access the properties of the object
correctly?

No comments:

Post a Comment