我有一個CFResponse,我想解析爲一個這樣的數組:解析CFResponse到陣列
$response = $this->scan($query);
$array = $response->body->Items->to_array();
print_r($array);
這給我一個空CFArray,出於某種原因,而
$response->body->Items->to_json();
另一隻手給我這個:
{"userID":{"S":"[email protected]"},"password":{"S":"secretPassword"}}
這只是第一行。 但是,這是我通過$ response-> body得到的;
CFSimpleXML Object ([ConsumedCapacityUnits] => 0.5 [Count] => 2 [Items] => Array ([0] => CFSimpleXML Object ([userID] => CFSimpleXML Object ([S] => [email protected]) [password] => CFSimpleXML Object ([S] => secretPassword)) [1] => CFSimpleXML Object ([userID] => CFSimpleXML Object ([S] => [email protected]) [password] => CFSimpleXML Object ([S] => secretPassword))) [ScannedCount] => 2)
正如你在這裏看到的,Items是一個數組。它是一個SimpleXMLIterator對象。 有兩行正在返回。
通過調用Items,我只獲得第一個對象。我怎樣才能解析所有的孩子到一個數組中,或者至少讓一個JSON字符串?我試過getChildren(),這沒有奏效。 此外,爲什麼不是to_array()
工作?
如果'Items'是一個數組,你有沒有試過'$ array = $ response-> body-> Items;'? – Havelock
是的,就像我說過的那樣,它只返回第一個對象 – NSAddict