【问题标题】:Calculate final tweet character length in PHP在 PHP 中计算最终的推文字符长度
【发布时间】:2012-02-10 11:52:00
【问题描述】:

twitter 为推文中的所有链接设置了 20 个固定字符长度。

因此,即使用户使用 bit.ly 之类的 url 缩短服务并粘贴短于 20 个字符的 url,所有 url 最终会被 twitter 赋予 20 个字符的长度。

我想知道如何计算一条推文的最终长度(包括一个或多个短网址),使其在 PHP 中保持在 140 个字符以下。

【问题讨论】:

标签: php api twitter limit character


【解决方案1】:

您可以通过正则表达式将链接替换为一些通用文本,然后用mb_strlen() 计算整个长度。 mb_strlen 因为 Twitter 将多字节字符视为一个字符。

$tweet = 'Check this: http://stackoverflow.com/questions/8864767/calculate-final-tweet-character-length-in-php';
$length = mb_strlen(preg_replace('~https?://([^\s]*)~', 'http://8901234567890', $tweet), 'UTF-8');
var_dump($length); // int(32);

您可能需要稍微调整正则表达式,因为它可能匹配很多(无效字符)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多