限制字符串的单词 - UTF8

时间:2011-05-25 09:36:50

标签: php

你能解释一下如何显示让我们说出包含20个单词的前10个字符串。 我有一个功能,可以处理非utf8字母,但如何用utf8字母做到这一点?

2 个答案:

答案 0 :(得分:3)

您可以将字符串拆分为单词和单词分隔符,然后从中抓取前十个单词:

$parts = preg_split('/(\p{L}+)/u', $str, -1, PREG_SPLIT_DELIM_CAPTURE);
$excerpt = implode('', array_slice($parts, 0, 20));

答案 1 :(得分:0)

会像

  

explode() - 按字符串

拆分字符串

成为你的朋友吗?

http://www.php.net/manual/en/function.explode.php

$words = "My String that contains over ten words etc etc etc etc";
$wordArray = explode(' ', $words);

$summary = array();
for($i = 0; $i < 10; $i++){
   $summary[] = $wordArray[$i];
}

$summary = implode(' ', $summary);
echo $summary;

或者你可以使用

  

strtok - Tokenize string

http://uk3.php.net/manual/en/function.strtok.php