如何在电报机器人中发送和字符?

How to send & character in telegram bot?

我需要通过 PHP 在电报消息中发送网站的 URL。 我使用此代码

    public function sendMessage($userid, $text)
        {
            try {
                $url = 'https://api.telegram.org/bot' . $this->token . '/sendMessage?chat_id=' . $userid . '&text=' . $text;
                file_get_contents($url);
            } catch (Exception $e) {
                error_log("\n sendMessage: " . $e->getMessage(), 3, 'log.txt');
            }
        }
$urlSearch = 'https://www.travelenter.com/Train?TrainArrivals=' . $destinateCode . '&TrainArrivalDates=' . $DateToday . '&TrainDepartures=' . $sourceCode . '&TrainDepartureDates=' . $DateToday . '&TrainIsOneWays=False&TrainPassengers=1&TrainTicketTypes=0&RNames=3&CheckCompartments=false&isoneways=false';
sendMessage($userid, $urlSearch);

发完一段URLdeleted.I后检查发现电报发送URL到&字符并删除到URL末尾。

如何解决这个问题?

使用urlencode()函数。

$urlSearch = "hello&world";
$urlSearch = urlencode($urlSearch);
sendMessage($userid, $urlSearch);