如何使用php将数组变量(json数组)(reddit oauth)保存到数据库mysql中

时间:2022-10-22 20:56:03

I have a code to get user details from reddit using oauth :

我有一个代码,使用oauth从reddit获取用户详细信息:

$response = $client->fetch("https://oauth.reddit.com/api/v1/me.json");

When I print the result like :

当我打印结果如:

print_r($response);

Result

Array
(
[result] => Array
    (
        [is_employee] => 
        [name] => Care_ishabell
        [created] => 1458655844
        [hide_from_robots] => 
        [is_suspended] => 
        [created_utc] => 1458627044
        [link_karma] => 1
        [in_beta] => 
        [comment_karma] => 0
        [over_18] => 
        [is_gold] => 
        [is_mod] => 
        [id] => wklr5
        [gold_expiration] => 
        [inbox_count] => 1
        [has_verified_email] => 
        [gold_creddits] => 0
        [suspension_expiration_utc] => 
    )

[code] => 200
[content_type] => application/json; charset=UTF-8
)

Now I want to store values in variables to insert into database. But when I try to store value in variables using :

现在我想将值存储在变量中以插入到数据库中。但是当我尝试使用以下方法在变量中存储值时:

$username = $response->result->name;

and echo it. Then it displays error :

并回应它。然后它显示错误:

Notice: Trying to get property of non-object in
G:\XAMPP\htdocs\a\redditlogin\index.php on line 45

注意:尝试在第45行的G:\ XAMPP \ htdocs \ a \ redditlogin \ index.php中获取非对象的属性

Notice: Trying to get property of non-object in
G:\XAMPP\htdocs\a\redditlogin\index.php on line 45.

注意:尝试在第45行的G:\ XAMPP \ htdocs \ a \ redditlogin \ index.php中获取非对象的属性。

So help me to store values in variables, so that I can store them in database.

因此,帮助我将值存储在变量中,以便将它们存储在数据库中。

2 个解决方案

#1


2  

print_r($response); contain array of array, So instead of $response->result->name; use $response['result']['name']

的print_r($响应);包含数组的数组,而不是$ response-> result-> name;使用$ response ['result'] ['name']

#2


-1  

Yes, @saty is right, also to answer the question in your subject, to store this in a database, just use json_encode function which will turn this array into a JSON string that you can save in you database.

是的,@ saty是对的,也是为了回答你的主题中的问题,将它存储在一个数据库中,只需使用json_encode函数,它将把这个数组变成一个可以保存在你的数据库中的JSON字符串。

#1


2  

print_r($response); contain array of array, So instead of $response->result->name; use $response['result']['name']

的print_r($响应);包含数组的数组,而不是$ response-> result-> name;使用$ response ['result'] ['name']

#2


-1  

Yes, @saty is right, also to answer the question in your subject, to store this in a database, just use json_encode function which will turn this array into a JSON string that you can save in you database.

是的,@ saty是对的,也是为了回答你的主题中的问题,将它存储在一个数据库中,只需使用json_encode函数,它将把这个数组变成一个可以保存在你的数据库中的JSON字符串。