手机短信息SMS的长度检测和编码

[ad#content]前一段时间做Web上的手机短信息SMS开发,遇到了不少的难题,像短信息字符的判断就着实让人头疼不已。要解决这一难题首先要明白,SMS字符的规范是什么,很多人认为只要一个字符符合ISO-8859-1标准就不需要给内容编码,其实手机短信有自己的一套规范:GSM 03.38,这套标准和ISO-8859-1的字符基本上是一样的,但还是有一些字符有差别。搞清楚这一点非常重要,如果一条短信息的内容是符合GSM 03.38标准的话,每条短信可以发送140个字符;如果不是的话每条短信就只可以发送70个字符。而且当短信内容是符合GSM 03.38标准的时候,有的字符是占一个字符,但有些字符是占两个字符的。
大家可以参考一下站点:
http://zh.wikipedia.org/wiki/ISO/IEC_8859-1
http://www.dreamfabric.com/sms/default_alphabet.html

下面是根据以上参考信息总结的一个PHP类:
继续阅读

PHP 获取ASCII码的方法

在网上找了好多PHP获取ASCII码资料,大部分用的都是PHP自带的函数 ord() 和 chr(),可是自己试了几次发现很多值和ASCII嘛都不一样,这里提供一个获取 ASCII码的地址:http://www.weste.net/tools/ASCII.asp
还有一个转换Uncode 编码的网站:http://rishida.net/scripts/uniview/conversion.php
继续阅读

javascript 的编码方式

js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent

1、 传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。

例如:<script language=”javascript”>document.write(‘<a href=”http://passport.baidu.com/?logout&aid=7&u=’+encodeURIComponent (“http://cang.baidu.com/bruce42″)+’”>退出</a>’);</script>

继续阅读

javascript的URL编码与反编码

这几天用AJAX做无刷新的页面,查阅相关资料:js对文字进行编码涉及3个函数:

escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent

escape() 方法:

采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。 继续阅读