回显部分文本
回答
试试这个:
$lines = preg_split("/[\r\n]+/", $crow->content, 3);
echo $lines[0] . '<br />' . $lines[1];
和线路的可变数量,用途:
$num_of_lines = 2;
$lines = preg_split("/[\r\n]+/", $crow->content, $num_of_lines+1);
array_pop($lines);
echo implode('<br />', $lines);
干杯!
取决于你是指文本内容,你也许可以用这脱身:
// `nl2br` is a function that converts new lines into the '<br/>' element.
$newContent = nl2br($crow->content);
// `explode` will then split the content at each appearance of '<br/>'.
$splitContent = explode("<br/>",$newContent);
// Here we simply extract the first and second items in our array.
$firstLine = $splitContent[0];
$secondLine = $splitContent[1];
注意 - 这将破坏所有的换行符你有你的文字!如果您仍然希望以原始格式保留文本,则必须再次插入它们。
为什么不分裂“\ n”? – 2012-04-15 15:34:30
@zol - 这是'nl2br()'函数的功能。 [来自手册](http://php.net/manual/en/function.nl2br.php),它表示它可以用于\ r \ n,\ n \ r,\ n和\ r' – Lix 2012-04-15 15:34:56
nl2br不会拆分,它将转换... – 2012-04-15 15:52:45
如果你的意思的句子,你可以通过爆炸段落,并选择阵列的前两个部分来做到这一点:
$array = explode('.', $paragraph);
$2lines = $array[0].$array[1];
否则,你将不得不在两行和使用计数的字符数一个substr()函数。例如,如果两行长度为100个字符,你会做:
$2lines = substr($paragraph, 0, 200);
然而,由于这样的事实:并不是所有的字体字符具有相同的宽度,可能难以准确地做到这一点。我建议采用最广泛的字符,例如'W',并在一行中回显多个这样的字符。然后计算可以跨两行显示的最大字符的最大数量。从这你会有最佳的数字。虽然这不会给你一个紧凑的两条线,但它将确保它不能超过两条线。
但是,这可能导致一个词被分成两部分。为了解决这个问题,我们可以使用爆炸函数来查找提取字符中的最后一个单词。
$array = explode(' ', $2lines);
然后我们可以找到最后一个单词并从最终输出中删除正确数量的字符。
$numwords = count($array);
$lastword = $array[$numwords];
$numchars = strlen($lastword);
$2lines = substr($2lines, 0, (0-$numchars));
这是一个比较普遍的答案 - 您可以使用此行取得任何数量:
function getLines($paragraph, $lines){
$lineArr = explode("\n",$paragraph);
$newParagraph = null;
if(count($lineArr) > 0){
for($i = 0; $i < $lines; $i++){
if(isset($lines[$i]))
$newParagraph .= $lines[$i];
else
break;
}
}
return $newParagraph;
}
你可以使用echo getLines($crow->content,2);
做你想做什么。
function getLines($text, $lines)
{
$text = explode("\n", $text, $lines + 1); //The last entrie will be all lines you dont want.
array_pop($text); //Remove the lines you didn't want.
return implode("<br>", $text); //Implode with "<br>" to a string. (This is for a HTML page, right?)
}
echo getLines($crow->content, 2); //The first two lines of $crow->content
- 1. Textview显示部分文本
- 2. jQuery:只返回文本的一部分
- 3. ASP.NET文本框失去对部分回发文本
- 4. 如何分别回显日期部分
- 5. 搜索文本文件并在文本框中显示文本的一部分
- 6. Android TextView:我可以停止显示部分显示的文本
- 7. Rails部分显示变量的文本版本
- 8. 分离文本分为3个部分
- 9. UpdateProgress不显示在部分回发
- 10. SQL select部分文本
- 11. jquery部分删除文本
- 12. 部分只读文本框
- 13. UITableView部分文本对齐
- 14. PHP回显纯文本
- 15. 将文本拆分为部分
- 16. 分割在几个部分文本(UNIX)
- 17. 部分回传
- 18. 回一部分
- 19. coretext显示文本从底部到顶部的文本域
- 20. Xampp没有显示回显文本
- 21. var_dump显示文本,但回显不是
- 22. 部分文本替换为脚本
- 23. Algolia - 格式突出显示的文本只显示突出显示的部分
- 24. 如何获取Flex文本区域中显示的文本部分
- 25. 从图像中捕获部分文本并突出显示捕获的文本
- 26. JavaScript来带回文本仅某些部分(笨和jQuery的)
- 27. 在范围中查找部分文本,返回单元格值
- 28. 水印文本框部分回发清除
- 29. 显示部分
- 30. 显示部分
你需要更具体。 – 2012-04-15 15:28:02
你可以借助插图。 – 2012-04-15 15:28:56