У меня проблема с анализом данных, возвращаемых моим веб-сервисом WCF.
Веб-служба передает обратно массив строк, эти данные помещаются в объект StdClass, проблема, с которой я сталкиваюсь, заключается в том, что данные изменяются в зависимости от того, существует ли 1 или более объектов.
Никогда не имея дело с объектами stdclass, я не совсем уверен, что делать.
Ниже приведен код, который я сейчас использую, $ Containers - это возвращаемое значение из вызова веб-службы.
<ul>
<?php var_dump($containers)?>
<?php foreach($containers as $item):?>
<li>
<?php
echo $item->string;
?>
</li>
<?php endforeach;?>
</ul>
Если возвращается только 1 значение, то следующий код работает нормально и отображает имя возвращаемого контейнера.
Если возвращено более 1 значения, $ item-> string становится Array. в любом случае, чтобы определить, какие значения содержит stdclass?
var_dump только с 1 контейнером
object(stdClass)[13]
public 'GetContainersResult' =>
object(stdClass)[14]
public 'string' => string 'container1' (length=10)
var_dump с более чем 1 контейнером
object(stdClass)[13]
public 'GetContainersResult' =>
object(stdClass)[14]
public 'string' =>
array
0 => string 'container1' (length=10)
1 => string 'container2' (length=10)
Заранее спасибо,
Мэтт