【问题标题】:Limit string chars - PHP限制字符串字符 - PHP
【发布时间】:2009-10-31 23:14:47
【问题描述】:

我正在用 mysql 构建一个 RSS 脚本,我不想在数据库中添加一个额外的字段......我想用“......阅读更多”缩小文章的正文,但我不确定我是如何做到的可以限制回显到页面上的字符数吗?

当然不是这种语法,而是类似于:

echo(limit($row['newsBody'], 1000));

我不介意这是否需要 15 行代码;)

附:我确定 limit() 是一个函数,请不要告诉我 .. 它只是一个例子;)

提前致谢!

【问题讨论】:

  • 您可以使用 strlen() 和 substr() 轻松实现。
  • 另外,为了避免切词,wordwrap():de3.php.net/wordwrap

标签: php string rss limit feed


【解决方案1】:
echo(substr($row['newsBody'], 0, 1000));

substr 函数正是您所寻找的。或者,如果您正在处理多字节字符串,则可以使用mb_substr。

【讨论】:

    【解决方案2】:

    你可以这样做

    $body = $row['newsBody'];
    $length = strlen($body) > 1000 ? 1000 : strlen($1000);
    echo substr($body,0, $length);
    

    它将打印前 1000 个字符或更短的整个消息

    【讨论】:

    • +1 用于备用或较短的考虑。
    • strlen() 检查不是必需的,因为 substr($s, 0, $length) 最多返回 $length 字符,具体取决于 $s 的长度。 php.net/manual/en/function.substr.php
    • 啊,是的,没错。 :) 我将把它留在这里,因为它可能会让某人想到在其他可能重要的情况下进行这样的检查。
    【解决方案3】:
    substr( $string, 0, 1000 );
    

    【讨论】:

      猜你喜欢
      • 2019-02-01
      • 2018-02-10
      • 2010-10-05
      • 1970-01-01
      • 2013-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多