Zend_Config_Xml

Поэтому я перечислю свои проблемы здесь, пожалуйста, помогите

Прежде всего, я использую Zend_Http_Client для вызова URL:

$client = new Zend_Http_Client('http://mydomain.com/Statistics.aspx?activity=top');
$response = $client->request('POST');
$response = $response->getRawBody();

Затем я получаю структуру документа Xml для $response, когда распечатываю его:

[?xml version='1.0' encoding='UTF-8'?]

[root]
    [member]
        [username>gh_MXH[/username]
        [money]129300[/money]
    [/member]
    [member]
        [username]sonhothiet_MXH[/username]
        [money]107400[/money]
    [/member]
[/root]

После этого я использую Zend_Config_Xml:

$xmlReader = new Zend_Config_Xml($response);
$xml = $xmlReader->toArray();

Но все, что я получаю, это только первый элемент массива, когда я печатаю $xml:

Array
(
    [member] => Array
        (
            [username] => gh_MXH
            [money] => 129300
        )

)

Пожалуйста, покажи мне, как получить все элементы, чтобы я мог делать циклы, как:

foreach($xml as $key => $value){
    echo $value['username'] . 'has' . $value['money'];
}

И еще один вопрос, когда я написал:

$xml = new Zend_Config_Xml($response, 'root');

Появляется ошибка, говорящая: раздел 'root' не может быть найден в. Очень нужна ваша помощь. Спасибо и извините за плохой английский.

1 ответ

Не использовать Zend_Config_Xml для анализа стандартных документов XML, это для конфигурационных файлов. PHP может легко сделать это изначально:

$xml = simplexml_load_string($response);
foreach($xml->member as $member){
    echo $member->username . 'has' . $member->money;
}
Другие вопросы по тегам