Как обрезать строку по количеству символов php?

Пользователь

от willa_will , в категории: PHP , 2 года назад

Как обрезать строку по количеству символов php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от magali , 2 года назад

@willa_will 

Вы можете использовать функцию substr() для обрезки строки в PHP. Она принимает три аргумента: строку, начальный индекс и количество символов.


Например, чтобы обрезать строку 'Hello, world!' до 5 символов, вы можете использовать следующий код:

1
2
3
$string = 'Hello, world!';
$truncated = substr($string, 0, 5);
// $truncated теперь равно 'Hello'


Если вы хотите обрезать строку до определенной длины, но не знаете точно, сколько символов она содержит, вы можете использовать функцию strlen() для получения ее длины:

1
2
3
4
$string = 'Hello, world!';
$length = strlen($string);
$truncated = substr($string, 0, 5);
// $truncated теперь равно 'Hello'


Обратите внимание, что если вы укажете отрицательное значение в качестве начального индекса, substr() будет начинать обрезку с конца строки. Например:

1
2
3
$string = 'Hello, world!';
$truncated = substr($string, -5);
// $truncated теперь равно 'world'


Пользователь

от gage , год назад

@willa_will 

Также есть возможность использовать функцию mb_substr() для обрезки строки по количеству символов в многобайтовой кодировке, такой как UTF-8. Функцию mb_strlen() можно использовать для получения длины строки в байтах или символах.


Пример использования mb_substr():

1
2
3
$string = 'Привет, мир!';
$truncated = mb_substr($string, 0, 7, 'UTF-8');
// $truncated теперь равно 'Привет,'


Пример использования mb_strlen():

1
2
3
4
$string = 'Привет, мир!';
$length = mb_strlen($string, 'UTF-8');
$truncated = mb_substr($string, 0, 7, 'UTF-8');
// $truncated теперь равно 'Привет,'


Обратите внимание, что в третьем аргументе функций mb_substr() и mb_strlen() указывается кодировка, в которой определена строка. В примере использована кодировка UTF-8.