切10个字后的内容

Déj*_*ond 6 php string

可能重复:
如何选择一个句子的前10个单词?

我想显示10个单词的内容单词而不是字符

$string = 'Lorem ipsum dolor sit amet,consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.';
Run Code Online (Sandbox Code Playgroud)

结果应该是
"Lorem ipsum dolor sit amet,consectetur adipiscing elit.Mauris ornare"

Luc*_*emy 16

试试这个功能:

function shorten_string($string, $wordsreturned)
{
  $retval = $string;
  $string = preg_replace('/(?<=\S,)(?=\S)/', ' ', $string);
  $string = str_replace("\n", " ", $string);
  $array = explode(" ", $string);
  if (count($array)<=$wordsreturned)
  {
    $retval = $string;
  }
  else
  {
    array_splice($array, $wordsreturned);
    $retval = implode(" ", $array)." ...";
  }
  return $retval;
}
Run Code Online (Sandbox Code Playgroud)

在您的文字上,如下所示:

$string = 'Lorem ipsum dolor sit amet,consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.';
$firsttenwords = shorten_string($string, 10);
Run Code Online (Sandbox Code Playgroud)

这里开始.

更新:现在它符合空间要求,并且符合新线路.

  • @thi - 在接受/投票回答之前,没有必要戳OP.从他的个人资料中可以看出,用户非常清楚如何接受答案.绝不是任何*要求*点击接受.至于投票,你只需复制一些你在其他地方找到的代码 - 而不是值得投票的IMO. (2认同)