给dabr添加140字自动截断功能

Felix Yan | 2010-02-06 | 441 views

dabr默认没有140字自动截断功能,有时候长推发不出去犹然不知,这里Felix给出一个简单的方法为dabr添加140字自动截断功能(未处理网址等特殊结构):

打开 /common/twitter.php 文件,找到

function twitter_update() {
  twitter_ensure_post_action();
  $status = twitter_url_shorten(stripslashes(trim($_POST['status'])));

在其下添加:

  if (function_exists('mb_substr')) {
    if (mb_strlen($status,'utf-8') > 140)
    $status = mb_substr($status, 0, 140, 'utf-8');
  }

即可:)
若想添加省略号,可以把

$status = mb_substr($status, 0, 140, 'utf-8');

替换为

$status = mb_substr($status, 0, 139, 'utf-8')."…";

或者

$status = mb_substr($status, 0, 137, 'utf-8')."...";

(中英文省略号,很简单,看明白也可以自行修改成其他东西)

这里调用了PHP的mbstring库函数,若没有开这个库,还是泪奔吧 XD

  1. Kars China Flock Windows says:

    帮你改了代码、、刚刚在测试、、被推友说了刷屏了、、

    if (function_exists(‘mb_substr’)) {
    if (mb_strlen($status,’utf-8′) > 140)
    $status = mb_substr($status, 0, 137, ‘utf-8′).”…”;
    }

    必须用 utf8 来 进行 检测 、、否则 会有问题 、、
    第一行 是 检测 模块 是否存在 、、

  2. ELL European Union Google Chrome Mac OS says:

    有空我折腾这个看看

  3. rr China Internet Explorer Windows says:

    我还没学过Php
    我是菜鸟~~
    我下学期就学了~不懂就问你,ok?

  4. A.shun China Opera Windows says:

    只玩Twitese,还没完dabr呢。。。
    也是自己截断

  5. Kars China Flock Windows says:

    我的大波 发推后 白屏 , 但 推成功发出 、、这是什么问题啊??

  6. zwwooooo China Mozilla Firefox Windows says:

    自己截断,纯顶!

  7. @itansy United States Mozilla Firefox Windows says:

    我暂时还用不上,呵呵。

  8. rr United States Internet Explorer Windows says:

    一点都看不懂~
    请详细一点

  9. 散人 China Google Chrome Windows says:

    沙花沒了,按你說的。確實不錯

  10. Felix Yan China Google Chrome Windows says:

    好建议,已添加:)

Post a comment

QR Code Business Card