2

json 格式。

{
  "message-count":"1",
  "messages":[
    {
    "status":"returnCode",
    "error-text":"error-message"
    }
  ]
}

在 php 中,我成功地获得了“状态”值$response->messages[0]->status
但是当我想访问“错误文本”属性时,代码$response->messages[0]->error-text给了我错误。如何使用连字符访问对象属性?

4

3 回答 3

6

这就是方法!

$object->{"message-count"};
$response->messages[0]->{'error-text'};

希望这可以帮助


任何字符串(字节序列)都可以用作类字段

$object->{"123"} = 10; // numbers
$object->{"{a}"} = 10; // special characters
$object->{"òòèè"} = 10; // non ascii characters
于 2013-02-18T10:29:02.453 回答
3

使用{}语法:

echo $response->messages[0]->{'error-text'};
于 2013-02-18T10:30:30.867 回答
0

请使用标准 PHP 功能 - 访问花括号中的变量:

class t {}
$a = new t();
$a->{"o-o"} = 1;
echo $a->{"o-o"};

因此,您需要编写 $response->messages[0]->{"error-text"}。

于 2013-02-18T10:33:23.367 回答