我使用以下内容获取json对象:
$json = file_get_contents("url-here");
$data = json_decode($json, true);
//test
var_dump($data);
这给了我这样的东西:
array(2){[" ok"] => bool(true)["结果"] => array(1){[0] =>阵列(2) {[" update_id"] => int(44893465)[" message"] => array(5){ [" MESSAGE_ID"] => int(16)[" from"] => array(3){[" id"] => INT(29595794) ["如first_name"] => string(3)" Bob" ["用户名"] => string(14)" Bobo" } ["聊天"] => array(3){[" id"] => int(29595794)[" first_name"] => string(3)" Bob" ["用户名"] => string(14)" Bobo" } [" date"] => int(1435354253)[" text"] => string(7)" / q 3.33" }}}
然后我想将某些值添加到变量中。例如,我想提取用户名,文本,message_id等
但无论我尝试什么,我的变量都是空的:
//let's test it
echo "Username: " . $data[1][0]["username"];
//another test
echo $data->username;
这些都不起作用,我的研究没有帮助我找到解决方案。我很难过这个。
任何正确方向的指针都会受到赞赏。
答案 0 :(得分:1)
array(2) {
["ok"]=> bool(true)
["result"]=> array(1)
{
[0]=> array(2)
{
["update_id"]=> int(44893465)
["message"]=> array(5)
{
["message_id"]=> int(16)
["from"]=> array(3)
{
["id"]=> int(29595794)
["first_name"]=> string(3) "Bob"
["username"]=> string(14) "Bobo"
}
["chat"]=> array(3)
{
["id"]=> int(29595794)
["first_name"]=> string(3) "Bob"
["username"]=> string(14) "Bobo"
}
["date"]=> int(1435354253)
["text"]=> string(7) "/q 3.33"
}
}
}
}
您使用的是错误的数组索引。 $data[1][0]["username"];
不存在。
$data["result"][0]["message"]["from"]["username"];
$data["result"][0]["message"]["chat"]["username"];
这将为您提供正确的用户名
答案 1 :(得分:0)
$json = file_get_contents("url-here");
$data = json_decode($json, true);
//test
echo $data["result"][0]['message']['from']['username'];
输出 波波