PHP и XML ответ от сервера - PullRequest
0 голосов
/ 06 марта 2012

Здравствуйте, у меня есть эта часть php кода

    $google_url = "http://uclassify.com/browse/uClassify/Sentiment/ClassifyText?readkey=jnsdnjdsnjnjsdnjsnjdsd&text=".$text."&version=1.01";

    $result = file_get_contents($google_url);


$obj = simplexml_load_string($result);

$zaab = toArray($obj);

echo($zaab);

и я получаю ответ

<?xml version="1.0" encoding="UTF-8" ?>
<uclassify xmlns="http://api.uclassify.com/1/ResponseSchema" version="1.01">
    <status success="true" statusCode="2000"/>
    <readCalls>
    <classify id="cls1">
        <classification textCoverage="0.6">
            <class className="negative" p="0.999984"/>   <-----p_value
            <class className="positive" p="1.60692e-005"/>     <-----p_value
        </classification>
    </classify>
    </readCalls>
</uclassify>

как я могу получить доступ к p_values?

нет после обновления выдает ошибку, связанную с toArray ()

Ответы [ 2 ]

1 голос
/ 06 марта 2012

Вы можете получить все значения атрибутов * p * s, просматривая все * class * es следующим образом:

$classes = $obj->readCalls->classify->classification->class;
    foreach ($classes as $class) {
        $p_val = $class->attributes()->p;
        echo $p_val . "<br />";
    }

Я вижу, вы также пытались преобразовать строку xml в массив, возможно, самый простой способ сделать это:

$json = json_encode($obj);
$xml_array = json_decode($json,TRUE);

Чтобы увидеть результаты, используйте:

<code>echo "<pre>";
print_r($xml_array);
echo "
";
0 голосов
/ 06 марта 2012

Использовать парсер XML.

http://php.net/manual/en/book.xml.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...