首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检测需要对SMS消息进行unicode会话的字符

检测需要对SMS消息进行unicode会话的字符
EN

Stack Overflow用户
提问于 2013-08-24 10:11:15
回答 1查看 687关注 0票数 0

我四处看看,找不到确切的答案来解决我的问题。

基本上,我有一个短信网关,我正在使用。要通过短信网关发送GSM、中文、阿拉伯等字符,我必须以16位unicode的方式发送消息。

我想要做的是检测消息是否需要作为16位unicode发送,或者对于简单的英文字符,只需要发送普通的旧7位。我所有的角色都存储在UTF-8中。

下面是我用来检测这一点的代码:

代码语言:javascript
复制
if (preg_match("/^[a-zA-Z0-9 !@#$%^&*()-_+={\[\]}|\\`<>,.\?\/]*$/u", $string) == 1)
    return '7-bit';
else
    return '16-bit';

我在这里上传了一些测试用例:http://phpfiddle.org/lite/code/v7f-gi0 (只需点击Run按钮)

对我来说,代码看起来很混乱。我是不是走错路了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-24 10:58:20

在这里找到我的答案多亏了Axel:Check unicode in PHP

代码语言:javascript
复制
if (strlen($string) != strlen(utf8_decode($string)))
{
    echo 'is unicode';
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18417395

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档