我在这里遇到了一个奇怪的问题,需要你的帮助。 PHP语言。
假设我有这样的输出:
一个
乙
ç
d
ë
现在取代5行,我想要2行,第3行将是“更多”,这将带他到另一页获取详细信息(我知道如何放置锚标签:S)
如果输出就像
这是5行或者更多的大段落,但我想要显示的只是前100个(或前n个字符)。重复这是一个5行或者更多的大段落,但我要显示的只是前100个(或前n个字符)这是5行或者更多的大段,但我想要显示的只是前100个(或前n个字符)这是一个5行或者更多的大段,但我要显示的只是前100个(或前n个字符)这是一个5行或更多的大段落,但我想要显示的只是前100个(或前n个字符)。
而不是这个,我想只显示前100个字符,然后再显示一个更详细的页面按钮。
第二个问题可以通过php函数substr来解决,但是第一个问题呢?我需要两个案例在同一个地方工作,比如如果输入在开始时有一些列表(地狱字符的地狱字符串),那么只会打印前2行。如果它是一个段落,则只有前100个(或一些n个)字符(或将印刷。) 任何猜测?
答案 0 :(得分:0)
您可以使用substr
然后使用ajax加载整个字符串。但您也可以使用CSS显示前X行 - 设置height
和overflow: hidden
。然后再次javascript来取消高度和溢出。
答案 1 :(得分:0)
我的实现将是这样的:
if (strpos("\n", $mytext) > -1) {
$textarray = explode("\n", $mytext);
$output = $textarray[0] . "\n" . $textarray[1];
} else {
$output = $mytext;
}
$output = substr($output, 0, 100);
在文本末尾处理切断的优雅方法比严格的100个字符限制要好,但我想要分享的主要部分是if
语句部分。