如何将数组的第一个值发送到php电报机器人中的sendmessage方法?

如何将数组的第一个值发送到php电报机器人中的sendmessage方法?,php,telegram-bot,Php,Telegram Bot,我想在telegram bot中从用户处获取消息,并返回部分文本作为回复,该回复由正则表达式指定: preg_match('/\b(?[a-z]+\d |\d+[a-z])[a-z\d]*\b/i',$text,$matches); 消息($chat\u id,$matches,$message\u id)->显示数组消息($chat\u id,$matches[0],$message\u id)->不显示任何内容 信息功能为: function bot($data) { return

我想在telegram bot中从用户处获取消息,并返回部分文本作为回复,该回复由正则表达式指定:

preg_match('/\b(?[a-z]+\d |\d+[a-z])[a-z\d]*\b/i',$text,$matches);
消息($chat\u id,$matches,$message\u id)->显示数组
消息($chat\u id,$matches[0],$message\u id)->不显示任何内容

信息功能为:

function bot($data)
{
    return json_decode(file_get_contents("https://api.telegram.org  /bot".API_TOKEN."/".$data),true);
}

function message($chat_id,$msg,$msg_id)
{
    bot("sendMessage?chat_id=".$chat_id."&text=".$msg."&reply_to_message_id=".$msg_id);
}

编辑:

我将代码更改为
message($chat\u id,v$matches[0][0],$message\u id)
,它只返回单词的第一个字符(例如,它不返回
ac64fc
,只返回字母
a

message($chat\u id,$matches[0][0]。$matches[0][1],$message\u id)
=ac在上面的例子中

那么,
$matches
实际上包含什么呢,你检查过了吗?在php中,它包含数字和字母的文本,比如:
当你尝试
message($chat\u id,$matches[0],$message\id)
时会发生什么?我只是用这个字符串尝试了一下:“foo ac64fc bar 4544”,效果很好。那么,
$matches
实际上包含了什么呢?你检查过了吗?在php中,它包含有数字和字母的文本,比如:
当你尝试
消息($chat\u id,$matches[0],$message\u id)
时会发生什么?我只是试着用这个字符串:“foo ac64fc bar 4544”,效果很好
$chat_id=$update['message']['chat']['id'];
$message_id=$update['message']['message_id'];
$text=$update['message']['text'];