如何在指定数量的字符后在php中创建换行符?

时间:2011-12-28 07:29:50

标签: php word-wrap break

我如何在php中编写以下内容?

  

如果没有空格的字符数超过75,则创建一个换行符。

wordwrap函数似乎也计算了空格,所以我不确定我是否可以使用它。我只想在我的$ description大于75个字符并且没​​有空格时中断。

感谢您的帮助!

3 个答案:

答案 0 :(得分:0)

我假设你只想打破一个空间,而不仅仅是任何角色。

这不是很有效但它应该有用。

$array = str_split($input);
$iNumChars = 0;
$sOutput = "";
foreach($array as $char) {
 if($char != " ") $iNumChars++;
 if($iNumChars > 75 && $char == " "){
  $sOutput .=  "\n".$char; 
  $iNumChars = 0;
 }else{
   $sOutput .= $char;
  }
}

答案 1 :(得分:0)

希望这会有效,请尝试:

// $str is your string
$explode = explode(" ", $str);

foreach( $explode as $key=>$val ){
    if( $key <= '75' ){
        $join_arr = " " . $val;

        if( $key == '75' ){
            // Line Break Here
            $join_arr .= "<br>";
        }

        echo $join_arr;
    }
    else{
        exit();
    }
}

仅提供76个字符。

答案 2 :(得分:-1)

查找字符串的长度。

如果strlen(string)&gt; 75

在字符串中搜索空格。(strpos)

如果找不到空格,则可以创建换行符