每当我尝试使用php包装mysql字符串时,这样:
while($row = mysql_fetch_array($result)){
$id=$row['id'];
$message = $row['message'];
$wrappedmessage = wordwrap($message, 3, "\n", true);
...
}
永远不会包装。它增加了一个空间。比如说消息是“你好,你好吗”。 它会打印出“你好,怎么样”。怎么了?
解答:
while($row = mysql_fetch_array($result)){
$id=$row['id'];
$message = $row['message'];
$wrappedmessage = wordwrap($message, 3, "<br/>", true);
echo "$wrappedmessage<br/>";
}
答案 0 :(得分:2)
我打赌你正在通过网络浏览器查看文本。
您需要使用<br/>
代替\n
作为换行符,或用<pre></pre>
块围绕您的文字。
编辑:
Christian Sciberras在评论中提出的另一种选择是使用:
nl2br(wordwrap($message, 3, "\n", true));
答案 1 :(得分:1)
http://www.w3schools.com/PHP/func_string_wordwrap.asp
您应该在<br />
旁边的函数调用中包含\n
,因此它会格式化HTML。
答案 2 :(得分:0)
请尝试使用PHP_EOL常量而不是“\ n”。它将为PHP运行的系统生成换行符。
答案 3 :(得分:0)
您的输出是否会转到浏览器?如果是这样,您需要输入“<br />\n
”。否则,如果输出位于命令行,则“\ n”就足够了。