0

我正在尝试输出数组的电子邮件值的值,但这样做有问题。该数组基于 json_decode()

这是我收到的错误

Fatal error: Cannot use object of type stdClass as array in /home/.... line 57

JSON(值:$this->bck_content)

{"email":"test@email.com","membership_id":"0","fname":"Kenneth","lname":"Poulsen","userlevel":"1","created":"2012-04-23 10:57:45","lastlogin":"2012-04-23 10:58:52","active":"y"}

我的代码

    # Display requested user details
    $details_array = json_decode($this->bck_content);

    $value = $details_array['email'];
    print $value;
4

2 回答 2

3

您需要使用第二个参数来json_decode强制 JS 对象上的数组结构。

json_decode($this->bck_content, true);

这将确保 json 中的所有 JS 对象都被解码为关联数组而不是 PHP StdObjects。

当然,这是假设您想使用数组表示法来访问它们。如果您可以使用对象表示法,那么您可以使用:

$value = $details_array->email;
于 2012-04-25T18:00:26.520 回答
1

试试这个

$value = $details_array->email;

或者

json_decode($json, true);

或者

$details_array = (array)json_decode($json);

你做错了什么写在错误描述中

于 2012-04-25T18:00:53.210 回答