我试图从服务器向电报发送Farsi消息,我收到了这个错误:
PHP警告:file_get_contents(https://api.telegram.org/botTOKEN/sendmessage?parse_mode=html&chat_id=CHAT_ID&text=%D8%A7%DB%8C%D9%85%D9%86%D8%AF+%D9%88%D8%A8%E2%80%8C%D8%B3%D8%A7%DB%8C%D8%AA%DB%8C+%D8%0A+%0A%3Ca+href%3D%22https%3A%2F%2FURL%22%3E%D9%88%D8%A8%E2%80%8C%D8%B3%D8%A7%DB%8C%D8%AA+%D8%A7%DB%8C%D9%85%D9%86%D8%AF+-+%D8%A7%DB%8C%D8%AF%D9%87+%D8%A8%D8%B2%D9%86%21%3C%2Fa%3E%0A%40URL):无法打开流:HTTP请求失败! HTTP / 1.1 400错误请求
谁能帮我?我想问题是波斯语和URL编码,但我不知道如何解决它。
您的text
必须正确进行URL编码。你可以用urlencode($text)
做到这一点。
为了使你的URL工作,你必须在第二个%D8
标志出现后立即删除+
。
%D8%A7%DB%8C%D9%85%D9%86%D8%AF+%D9%88%D8%A8%E2%80%8C%D8%B3%D8%A7%DB%8C%D8%AA%DB%8C+%0A+%0A%3Ca+href%3D%22https%3A%2F%2FURL%22%3E%D9%88%D8%A8%E2%80%8C%D8%B3%D8%A7%DB%8C%D8%AA+%D8%A7%DB%8C%D9%85%D9%86%D8%AF+-+%D8%A7%DB%8C%D8%AF%D9%87+%D8%A8%D8%B2%D9%86%21%3C%2Fa%3E%0A%40URL