我正在尝试从.net WebService获取一个数组并回显它,但它一直说:"不能使用stdClass类型的对象作为数组"如果我使用var dump我得到这个,所以数组在变量中。我需要做一些特别的事情,因为它来自.net webservice ???我没有C#的经验。第一个功能正常工作。
object(stdClass)#4(1){[" string"] => array(4){[0] => string(3)" Ivo" [1] =>字符串(6)"彼得" [2] => string(5)" Simon" [3] => string(6)" Michel" }}
<?php
$client = new SoapClient("http://xavier.monkees.com/XavierService.svc?singleWsdl");
$response = $client->CheckName(array(
"name" => "$naam"));
$response_array = $client->GetNames()->GetNamesResult;
echo $response_array[1];
?>
答案 0 :(得分:0)
查看对象的转储,看起来第一个下标是&#34; string&#34;
object(stdClass)#4 (1) { ["string"]=> array(4) { [0]=> string(3) "Ivo" [1]=> string(6) "Peter" [2]=> string(5) "Simon" [3]=> string(6) "Michel" } }
尝试
$response_array = $client->GetNames()->GetNamesResult->string[1];
或
$response_array = $client->GetNames()->GetNamesResult["string"][1];