很抱歉,如果这是一个特别愚蠢的问题,但现在已经很晚了,我会稍微绕过这个问题。
我有一个从echo '<pre>';print_r($r);echo '</pre>';
给出的API返回的对象:
stdClass Object
(
[id] => 49
[submitdate] => 2015-11-05 14:33:16
[lastpage] => 4
[startlanguage] => en
[Qu1[SQ001]] => Fred Bloggs
[Qu1[SQ003]] => Caretaker
[Feedback] => Great course, thank you
)
echo '<p>Feedback: '.$r -> Feedback.'</p>';
行显示“很棒的课程,谢谢你”,但echo '<p>'.$r -> Qu1 -> SQ001.'</p>';
没有显示'Fred Bloggs',而是收到错误:Notice: Undefined property: stdClass::$Qu1
。
请有人告诉我我做错了什么?
答案 0 :(得分:1)
你可以用两种方式做到(可能还有更多,但我只知道两种:))
<强> 1)强>
$obj['a'] = "A";
$obj['b'] = "B";
$obj['c'] = "C";
$obj['get[d]'] = "D";
$obj['get[E]'] = "E";
$obj = (object) $obj;
echo "This is: ".$obj->{'get[d]'}.PHP_EOL;
echo "This is: ".$obj->{'get[E]'}.PHP_EOL;
将输出
This is: D
This is: E
<强> 2)强>
另外,您可以使用get_object_vars()
获取对象的属性
州
get_object_vars - 获取给定对象的属性
所以,
$array = get_object_vars($obj);
echo "This is: ".$array['get[E]']." but getting from array";
<强> DEMO 强>
答案 1 :(得分:0)
尝试:
$ r - &gt;魁[SQ001]
Qui看起来是一个数组所以$ r - &gt; Qui - &gt; SQ001不起作用