Как отправить первое значение массива в метод sendmessage в php telegram bot? - PullRequest
1 голос
/ 09 апреля 2019

Я хочу получить сообщение от пользователя в боте телеграммы и вернуть некоторую часть его текста в качестве ответа, который определяется регулярным выражением:

preg_match('/\b(?:[a-z]+\d|\d+[a-z])[a-z\d]*\b/i', $text, $matches); message($chat_id,$matches,$message_id); -> показывает массив message($chat_id,$matches[0],$message_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);
}

и

$chat_id=$update['message']['chat']['id'];
$message_id=$update['message']['message_id'];
$text=$update['message']['text'];

РЕДАКТИРОВАТЬ:

Я изменил код на message($chat_id,v$matches[0][0],$message_id) и он возвращаеттолько первый символ слова (например, вместо ac64fc он возвращает только букву a) message($chat_id,$matches[0][0].$matches[0][1],$message_id) = ac в приведенном выше примере

...