Обрезание строки до заданной длины с левого края в PHP
Функция truncateLeft()
В PHP нет отдельной функции для данной задачи. Такой функционал можно реализовать с помощью функции получения подстроки mb_substr().
Исходный код
class StringExtension {
/**
* @param string $string
* @param int $length
* @param string $encoding
* @return string
*/
public static function truncateLeft($string, $length, $encoding = null) {
$string = (string) $string;
$length = (int) $length;
$encoding = ($encoding === null) ? mb_internal_encoding() : (string) $encoding;
if ($length <= 0) {
$string = '';
} elseif (($truncateLength = mb_strlen($string, $encoding) - $length) > 0) {
$string = mb_substr($string, $truncateLength, $length, $encoding);
}
return $string;
}
}
Аргументы
- $string — обрезаемая строка;
- $length — нужная длина строки;
- $encoding — кодировка.
Возвращаемое значение
Возвращает строку string, обрезанную до длины length с левого края.
Особенности
Безопасна для многобайтных строк.