У меня есть операция WCC GetColors, которая возвращает список цветов как GetColorsResult. Я получаю результат хорошо, но как мне пройти через GetColorsResult в php и эхо каждого элемента?
Я делаю:
<?php
header('Content-Type: text/plain');
echo "WCF Test\r\n\r\n";
// Create a new soap client based on the service's metadata (WSDL)
$client = new SoapClient('http://localhost:8181/Colors.svc?wsdl',array(
'login' => "test", 'password' => "test"));
$retval = $client->GetColors();
//Need to loop throuh $retval here
echo $retval->GetColorsResult; //This throws error.
?>
Есть ли способ управления именем результата, например, я не указал WCF для возврата GetColorsResult, он добавил Result к моему вызову метода. Аналогично, он добавляет ответ к GetColors для ответа (GetColorsResponse)
Вывод при выполнении print_r ($ retval):
stdClass Object
(
[GetColorsResult] => stdClass Object
(
[Color] => Array
(
[0] => stdClass Object
(
[Code] => 1972
[Name] => RED
)
[1] => stdClass Object
(
[Code] => 2003
[Name] => BLUE
)
[2] => stdClass Object
(
[Code] => 2177
[Name] => GREEN
)
)
)
)