instasent/sms-counter-php

SMS Counter PHP 类库,用于检测 SMS 消息文本的编码,按照编码统计字符数,并给出页面限制信息。

0.5.2 2019-06-06 08:16 UTC

This package is auto-updated.

Last update: 2024-09-06 20:24:33 UTC


README

SMS 消息字符计数器

Build Status SensioLabsInsight

用法

use Instasent\SMSCounter\SMSCounter;

$smsCounter = new SMSCounter();
$smsCounter->count('some-string-to-be-counted');
$smsCounter->countWithShiftTables('some-string-to-be-counted');

返回结果

stdClass Object
(
[encoding]    => GSM_7BIT
[length]      => 25
[per_message] => 160
[remaining]   => 135
[messages]    => 1
)
UTF16 通知

当使用 U+10000(主要是表情符号 😎)以上的 Unicode 字符,并且消息长度超过 70 个字符时,剩余值实际上将是最后一个消息部分中的剩余字符数,这是由于这些字符使用两个 16 位字符进行编码,且最大部分长度为奇数(67)。

净化

您可以将文本净化为有效的严格 GSM 03.38 字符集。

use Instasent\SMSCounter\SMSCounter;

$smsCounter = new SMSCounter();
$smsCounter->sanitizeToGSM('dadáó'); //return dadao

国家语言转换表

从 GSM 03.38 的第 8 版开始,允许使用一些额外的字符集。以下是目前支持的此类国家语言转换表列表:

安装

sms-counter-php 通过 composerpackagist 上可用。

{
    "require": {
       "instasent/sms-counter-php": "^0.4"
    }
}

许可证

SMS Counter (PHP) 在 MIT 许可证 下发布。

提及