Sha*_*haz 5 php sms http url-encoding clickatell
我想你们中的一些人有使用Clickatell的经验.我的问题是:当我使用法语或西班牙语字符(URL编码)通过他们的http api发送消息时,他们不会在手机上显示(字符).
我正在使用这个--guide-:http:// support.clickatell.com /faq.php?mode=view_entry&kbid=121&kbcat=26
我已经用几部手机对它进行了测试,并且它们都表现出相同的结果:"一个人!我是一个人吗?" 应该是"çava!monélèvemiiña?" (或类似的东西)
不幸的是他们的支持不是很具体(对我来说),我现在有点困惑,这就是我得到的:
请参阅:http://www.dreamfabric.com/sms/default_alphabet.html
此后,请根据上述标准对您的text =参数进行编码以使您的法语字符在手机上正确显示.
基本上使用SMS,您有两种发送文本的选项:使用GSM 03.38中指定的"默认字母" 或使用Unicode.
默认字母表是在大多数西方国家发送短信的常用方式,因为它为该地区的语言提供了可接受的子集.它是一个7位编码,因此您可以在140个可用字节中容纳160个字符."最多",因为此编码使用多个表.您可以通过在字符前加上escape(s)(0x1B)来访问扩展表中的字符.因此,如果您主要使用第一个表,则7位编码可以保存位置.
另一种选择是使用Unicode(特别是UCS-2).显然,这会给你一个更广泛的字符集,但代价是空间:每个字符使用两个字节,这个编码会让你有70个字符的限制.
我不能代表Clickatell,因为我从未使用它们,但是一些提供商为您提供了一个抽象的API,让您使用流行的编码,如ISO-8859-1("latin-1").在某些时候,这仍然被重新编码为7位默认字母表.甚至可以应用一些映射规则,例如使用'è'而不是'é',因为前者看起来几乎相同并且在默认字母表中.当然,如果您想完全控制内容,那么您需要使用一个API来传输以GSM默认字母表编码的文本.
| 归档时间: |
|
| 查看次数: |
4448 次 |
| 最近记录: |