Сокращение строк с учетом границ слов в PHP
В PHP функция substr() обеспечивает удобный способ усечения строк. Однако по умолчанию он не учитывает границы слов, что может привести к получению неполных или неудобных отрывков.
Чтобы решить эту проблему, мы можем изменить наш подход, указав приоритет сохранения слов целиком. Рассмотрим следующий фрагмент:
$big = "This is a sentence that has more than 100 characters in it, and I want to return a string of only full words that is no more than 100 characters!";
$pos = strpos($big, ' ', 100); // Find the first space within the first 100 characters
$small = substr($big, 0, $pos); // Truncate at the space to keep the word intact
echo $small;
Здесь мы сначала ищем позицию пробела в первых 100 символах строки (strpos($big, ' ', 100)). Затем мы используем эту позицию в качестве точки отсечения для усечения (substr($big, 0, $pos)).
Этот подход гарантирует, что мы всегда извлекаем полное слово, даже если полная строка превышает 100 символов. В этом примере выходные данные будут такими:
This is a sentence that has more than 100 characters in it, and I want to return a string of only
Это решение эффективно сохраняет границы слов, в то время как соблюдая ограничение в 100 символов.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3