我使用条件语句:if(count(explode(PHP_EOL, $str) > 5)
来检查字符串是否超过5行,但如何只打印字符串的前5行?
使用array_slice
$lines = explode(PHP_EOL, $str);
echo implode(PHP_EOL, array_slice($lines,0,4)) . PHP_EOL;
当expolode时,将值放入数组中。遍历一个数组,然后添加一个计数器。当计数器为5时,退出迭代。
$lines = explode(PHP_EOL, $str);
$i = 1;
foreach ($lines as $line) {
echo $line ."'n";
$i++;
if ($i >= 5) {
break;
}
}
我想我迟到了,但您也可以将explode
的结果限制为5
:
explode(PHP_EOL, $string, -(count(explode(PHP_EOL, $string )) - 5 ));
// split lines with new line
$lines = explode(PHP_EOL, $str);
// loop through first five lines
for($i = 0; $i < 5; $++)
{
// print line
echo $lines[$i];
}