ホームページ >バックエンド開発 >PHPチュートリアル >phpは単語を破壊せずに部分文字列をインターセプトします

phpは単語を破壊せずに部分文字列をインターセプトします

WBOY
WBOYオリジナル
2016-07-25 08:43:08719ブラウズ

php不破坏单词截取子文字串

  1. /*
  2. snippet(phrase,[最大長],[フレーズ末尾])
  3. snippetgreedy(phrase,[次のスペースまでの最大長],[フレーズ末尾])
  4. */
  5. 関数スニペット($text,$length=64,$tail="...") {
  6. $text = トリム($text);
  7. $txtl = strlen($text);
  8. if($ txtl > $length) {
  9. for($i=1;$text[$length-$i]!=" ";$i++) {
  10. if($i == $length) {
  11. return substr($text ,0,$length) 。 $tail;
  12. }
  13. }
  14. $text = substr($text,0,$length-$i+1) 。 $tail;
  15. }
  16. return $text;
  17. }
  18. // 貪欲に動作し、長さの文字を取得します。もっと多くのことを試します
  19. functionsnippetgreedy($text,$length=64,$tail="...") {
  20. $text = トリム($text);
  21. if(strlen($text) > $length) {
  22. for($i=0;$text[$length+$i]!=" ";$i++) {
  23. if(!$text[$length+$i]) {
  24. return $text;
  25. }
  26. }
  27. $text = substr($text,0,$length+$i) 。 $tail;
  28. }
  29. return $text;
  30. }
  31. // スニペットと同じですが、最新の句読点文字 (ドットとカンマ) が存在する場合は削除します。
  32. //後でスペースの接尾辞のトリムを実行します
  33. functionsnippetwop($text,$length=64,$tail="...") {
  34. $text =rim($text);
  35. $txtl = strlen($text) ;
  36. if($txtl > $length) {
  37. for($i=1;$text[$length-$i]!=" ";$i++) {
  38. if($i == $length) {
  39. substr($text,0,$length) を返します。 $tail;
  40. }
  41. }
  42. for(;$text[$length-$i]=="," || $text[$length-$i]=="." || $text[$length-$ i]== ";$i++) {;}
  43. $text = substr($text,0,$length-$i+1) . $tail;
  44. }
  45. return $text;
  46. }
  47. /*
  48. echo(snippet("これは、左側の列で実行するには長すぎません。おそらく、またはおそらくはい、わかりません") . "< br>");
  49. echo(snippettwop("これは左側の列で実行するには長すぎません。おそらく、またはおそらくはい、わかりません") . "
    ");
  50. echo(snippetgreedy("これは左側の列で実行するには長すぎません。おそらく、またはおそらくはい、わかりません。"));
  51. */
复制代码

php


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。