public static function truncate4line($body, $line, $trimmarker = '...', $is_rtrim = true, $encoding = null) { $encoding or $encoding = \Fuel::$encoding; $is_truncated = false; if (!$line) { return array($body, $is_truncated); } if (!($pos = Util_string::mb_strpos_n($body, "\n", $line, $encoding))) { return array($body, $is_truncated); } $is_truncated = $pos < mb_strlen($body, $encoding); $body = mb_substr($body, 0, $pos, $encoding); if ($is_truncated) { if ($is_rtrim) { $body = rtrim($body); } if ($trimmarker) { if (!Str::ends_with($body, "\n")) { $body .= ' '; } $body .= $trimmarker; } } return array($body, $is_truncated); }