gpt4 book ai didi

php - 如何编码法语/西类牙语字符以使用 clickatell 的 http api?

转载 作者:可可西里 更新时间:2023-11-01 13:48:32 24 4
gpt4 key购买 nike

我想你们中的一些人有使用 Clickatell 的经验。我的问题是:当我使用法语或西类牙语字符(URL 编码)通过他们的 http api 发送消息时,它们不会在手机上显示(字符)。

我正在使用这个 -guide-:http://support.clickatell.com/faq.php?mode=view_entry&kbid=121&kbcat=26

我已经用几部手机对其进行了测试,它们都显示相同的内容:“a va! mon l ve mi ni a?”应该是“ça va!mon élève mi niña?” (或非常相似的东西)

不幸的是他们的支持不是很具体(对我来说),我现在有点困惑,这就是我得到的:

请参阅:http://www.dreamfabric.com/sms/default_alphabet.html

然后,请根据上述标准对您的 text= 参数进行 URL 编码,以使您的法语字符在您的手机上正确显示。

最佳答案

基本上,对于 SMS,您有两种发送文本的选项:要么使用 GSM 03.38 中指定的“默认字母表”或使用 Unicode。

默认字母表是大多数西方国家/地区发送 SMS 的常用方式,因为它为该地区的语言提供了可接受的子集。它是 7 位编码,因此您最多可以将 160 个字符放入 140 个可用字节中。 “最多”,因为这种编码使用了几个表。您可以通过在字符前加上转义字符 (0x1B) 来访问扩展表中的字符。因此,如果您主要使用第一个表,则 7 位编码可以节省空间。

另一种选择是使用 Unicode(特别是 UCS-2)。显然,这为您提供了更广泛的字符集,但以空间为代价:为每个字符使用两个字节,此编码使您有 70 个字符的限制。

我不能代表 Clickatell,因为我从未使用过它们,但一些提供商为您提供了一个抽象 API,让您可以使用流行的编码,例如 ISO-8859-1(“latin-1”)。在某些时候,这仍然被重新编码为 7 位默认字母表。甚至可以应用一些映射规则,例如使用 'è' 而不是 'é' 因为前者看起来几乎相同并且在默认字母表中。当然,如果您想完全控制内容,则需要使用 API 来传输以 GSM 默认字母表编码的文本。

关于php - 如何编码法语/西类牙语字符以使用 clickatell 的 http api?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4305334/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com