lucadevelop / telegram-entities-decoder
PHP的Telegram实体解码器
v1.3.1
2024-02-01 17:06 UTC
Requires
- php: >=7.0.0
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-08-28 13:11:41 UTC
README
此类解码来自Telegram机器人消息的样式实体(粗体、斜体等),在文本中以内联实体形式呈现,尽可能复制原始消息发送给机器人时的确切样式。这一切工作都是必要的,因为Telegram返回的是以UTF-16代码单位为单位的实体偏移量和长度,这在PHP中很难正确解码。
考虑⭐️星标此项目
兼容性
PHP >= 7.0
功能
- 解码文本消息和附件标题中的实体。
- 支持所有Telegram解析模式(Markdown、HTML和MarkdownV2)。HTML具有更高的熵,但它是最好的,也是推荐的。
- 支持文本字段中的emoji
- 易于使用
注意:Markdown解析模式已弃用且不再更新,因此它不支持所有实体。请使用MarkdownV2或HTML。
示例用法
$entity_decoder = new EntityDecoder('HTML');
$decoded_text = $entity_decoder->decode($message);
请参阅示例文件夹中的完整示例
Composer
composer require lucadevelop/telegram-entities-decoder
使用方法
require 'vendor/autoload.php';
use lucadevelop\TelegramEntitiesDecoder\EntityDecoder;
[...]
$entity_decoder = new EntityDecoder('HTML');
$decoded_text = $entity_decoder->decode($message);
致谢
- Telegram文档:https://core.telegram.org/bots/api#formatting-options
- 灵感来源于:php-telegram-bot/core#544 (评论)