У меня есть функция GetColors WCF, которая возвращает список цветов как 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, он добавил результат к вызову метода. Аналогично, он добавляет ответ на 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 ) ) ) )