繁体   English   中英

如何将json转换为php数组并使用foreach呢?

[英]How to convert json to php array and use foreach on it?

我已经构建了一个Telegram机器人,并希望回复发送到我的机器人的任何消息。 我使用了getUpdates方法并收到了一个JSON对象。 现在我想从中提取任何chat_id并使用sendMessage方法向它发送消息。 请帮助我如何使用foreach。 以下是我的JSON对象:

{"ok":true,"result":[{"update_id":709393586, "message":{"message_id":60,"from":{"id":123456789,"first_name":"Ameer","last_name":"Mousavi","username":"ameer_mousavi"},"chat":{"id":123456789,"first_name":"Ameer","last_name":"Mousavi","username":"ameer_mousavi"},"date":1436038917,"text":"hi"}}]}'

对不起初学者的问题;)我对编程很新。

我找到了解决方案。 这是代码:

`$obj = json_decode($result, true);
foreach ($obj["result"] as $key => $value) {
    $temp_chat_id =  $value["message"]["chat"]["id"];
    sendMessage($temp_chat_id, "Hi");
}`
<?php
$response = json_decode(data(), true);
if ( !$response['ok'] ) {
    die('not ok');
}
else {
    foreach($response['result'] as $result) {
        echo $result['update_id'], ' ', $result['message']['chat']['id'], "\r\n";
    }
}


function data() {
    return '{"ok":true,"result":[{"update_id":709393586,
"message":{"message_id":60,"from":{"id":123456789,"first_name":"Ameer","last_name":"Mousavi","username":"ameer_mousavi"},"chat":{"id":123456789,"first_name":"Ameer","last_name":"Mousavi","username":"ameer_mousavi"},"date":1436038917,"text":"hi"}}]}';
}

版画

709393586 123456789

即update_id和聊天元素的id。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM