Wordwrap внутри оператора while

По сути, у меня есть оператор while, и я хочу сделать так, чтобы, если выделенный текст был слишком длинным, он добавлял разрыв каждые 20 символов или около того.

Я сделал попытку, но она не работает. Основная проблема с этим на мобильном телефоне, если текст больше 20 символов, он выйдет за пределы разделителя.

Мое общее заявление:

while ($field = $result->fetch_assoc()) {
if ($columnCount < 10) {
$text = $field["text"];
$newtext = wordwrap($text, 20, "<br />\n");
echo '
<div class="well">
<div class="row">
<div class="col-xs-10">
'.$newtext.'<br /><br /><a class="link" href="view.php?id='.$field["id"].'"><b>'.$field["name"].'</b> - '.time_elapsed_string($field["timestamp"]).'</a>
</div>
<div class="col-xs-2 text-center counter">
<form action="like.php?id='.$field["id"].'" method="POST" style="margin-bottom:0px;margin-top:-8%;">
<button class="btn btn-primary btn-sm" type="submit" name="submit" id="submit">&#9650</button><br />
<input type="hidden" name="id" value="'.$field["id"].'">
</form>
<div class="well well2 text-center" style="padding:0px;margin-bottom:0px;width:100% !important;">
'.$field["likes"].'
</div>
<form action="dislike.php?id='.$field["id"].'" method="POST">
<button class="btn btn-primary btn-sm" type="submit" name="submit" id="submit">&#9660;</button><br />
<input type="hidden" name="id" value="'.$field["id"].'">
</form>
</div>
</div>
</div>';
$columnCount++;
}
}

Я сделал попытку, но не был уверен, как заставить это работать точно. Здесь нет ошибки, она будет отображаться вместе с текстом, но в строке после 20 символов или около того не будет никаких разрывов.

Вот изображение одного из результатов, которое отображается с более чем 20 символами без перерыва. Если я просматриваю источник, перерывов тоже нет.

введите описание изображения здесь

Изменить: я бы опубликовать его изображение на мобильном телефоне, но я не могу сейчас. По сути, текст будет полностью выходить за рамки и не останется внутри. Это уйдет со страницы и все.

-1

Решение

Пытаться:

$newtext = wordwrap($text, 20, "<br />\n", true);

true требуется, чтобы заставить разрыв длинной строки, несмотря ни на что.

Более подробная информация в PHP документы для WordWrap.

В качестве альтернативы вы могли бы пытаться chunk_split

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]