Я пытаюсь ограничить количество символов, возвращаемых из строки с помощью PHP.PHP Ограничить вывод строки конкретными символами
Я применил решение, которое, похоже, разбило сервер (высокая загрузка/бесконечный цикл), поэтому я прошу альтернативы.
Я пытаюсь найти решение, которое разрезает строку и отображает определенное количество символов, но по-прежнему уважает смысл предложения, то есть он не делает разрез в середине слова
Мои вызов функции выглядит следующим образом:
<?php
uc_textcut(get_the_title());
?>
и в моей functions.php это код, который я использовал (и это делает аварии):
function uc_textcut($var) {
$position = 60;
$result = substr($var,$position,1);
if ($result !=" ") {
while($result !=" ") {
$i = 1;
$position = $position+$i;
$result = substr($var,$position,1);
}
}
$result = substr($var,0,$position);
echo $result;
echo "...";
}
Моя проблема с $position = 60
.
Чем выше это число, тем больше нагрузки требуется - как и его очень медленный цикл.
Я думаю, что что-то не так с while()
, но я стараюсь, чтобы его все еще понятный посетитель, опять же, не срезая посреди слова.
Любой вход?
:) большое спасибо ребята
Хм .. должен сказать, это действительно умное мышление. Спасибо за совет. Я применил его ... он работает быстро, и он стоит одну строку кода. привет –
@ Амад: добро пожаловать :-); @Byron: одна из хороших вещей с PHP заключается в том, что всегда есть что-то, что можно обнаружить ;-) (и это причина, по которой мне нравится SO ^^) –