1
我使用Guzzle向後端的外部API發出XML請求。如何在php/Laravel 5中解析SimpleXMLElement?
這是我創建狂飲客戶端:
$client = new Client(); //GuzzleHttp\Client
這是我提出的要求:
$request = $client->request('GET', 'This is where I put the URL');
這是我得到的狂飲響應,並嘗試分析它:
$xml = $request->getBody()->getContents();
$xml = new \SimpleXMLElement($xml);
$xml = simplexml_load_string($xml);
如果我這樣做:
dd($xml);
我收到此回報:
SimpleXMLElement {#240 ▼
+"StatusCode": "1"
+"StatusDescription": "Duplicated request"
+"MerchantId": "***"
+"Company": "***"
+"CompanyCity": "***"
+"CompanyPhone": "***"
+"CompanyDbaName": "***"
+"Balance": "99965"
+"TransDate": "2017-10-07"
+"TransTime": "06:58:48"
+"ProductVer": "***"
+"PromoVer": object
+"SoftVer": object
+"InvoiceNumber": object
}
我的問題是,我不知道如何解析這個。我想在StatusCode
中獲得1
。
如果我這樣做:
dd($xml->StatusCode);
我收到此:
SimpleXMLElement {#242 ▼
+0: "1"
}
如何得到公正1
?
'$ XML-> StatusCode'仍然是一個對象。你可以通過各種方式將其強制轉換爲字符串,例如簡單地'echo $ xml-> StatusCode'。 – ishegg
謝謝,它的工作。 – Seio
我提交了一個更詳細的答案。 – ishegg