电报PHP创建键盘
问题描述:
有人可以帮助我解决这个代码中的问题? 我想在电报机器人中有3个按钮。 这是execute.php文件,如果在参数中我把reply_markup不起作用。电报PHP创建键盘
<?php
$content = file_get_contents("php://input");
$update = json_decode($content, true);
if(!$update)
{
exit;
}
$message = isset($update['message']) ? $update['message'] : "";
$messageId = isset($message['message_id']) ? $message['message_id'] : "";
$chatId = isset($message['chat']['id']) ? $message['chat']['id'] : "";
$firstname = isset($message['chat']['first_name']) ? $message['chat']['first_name'] : "";
$lastname = isset($message['chat']['last_name']) ? $message['chat']['last_name'] : "";
$username = isset($message['chat']['username']) ? $message['chat']['username'] : "";
$date = isset($message['date']) ? $message['date'] : "";
$text = isset($message['text']) ? $message['text'] : "";
$text = trim($text);
$text = strtolower($text);
header("Content-Type: application/json");
$response = '';
$encodedMarkup = '';
$list=array("A", "B", "C");
$response="Choose:";
global $bottoken;
$replyMarkup = array(
'keyboard' => list,
);
$encodedMarkup = json_encode($replyMarkup);
$parameters = array('chat_id' => $chatId, 'text' => $response, 'reply_markup' => $encodedMarkup);
$parameters["method"] = "sendMessage";
echo json_encode($parameters);
答
这是错误的:
list=array("A", "B", "C");
不能赋值一个常数。您只能将define()
设为常数,例如
define('list', array('A', 'B', 'C'));
也许你的意思是
$list=array("A", "B", "C");
^--
呢?
答
试试这个
$list = array(array("A", "B", "C"));
$replyMarkup = array("keyboard" => $list,"resize_keyboard" => false,"one_time_keyboard" => false);
$encodedMarkup = json_encode($replyMarkup);
是的,这是一个在复制/粘贴错误。但它还没有工作。 –