проблема в том что если пользователь вписывает текст без пробелов то он выводится одной строкой и залазит за передлы div и p
<?php
$text="аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа";
?>
<div style="width: 200px; border:1px solid #000">
<p style="width: 200px">
<?php
echo $text;
?>
</p>
</div>
как можно написать что если длина каждой строки привышает к примеру 30 символов то вставлять в конце каждой строки <br />
Спустя 3 минуты, 26 секунд (31.05.2012 - 22:26) Игорь_Vasinsky написал(а):
Спустя 1 минута, 24 секунды (31.05.2012 - 22:27) Invis1ble написал(а):
или preg_replace()
Спустя 14 минут, 50 секунд (31.05.2012 - 22:42) sharomet написал(а):
неаааа...неработает ни то ни другое
Спустя 4 минуты, 8 секунд (31.05.2012 - 22:46) sharomet написал(а):
<p style="width: 200px;white-space: pre-wrap; padding:0; border:1px solid #000" >
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
</p>
даже в таком варике неполучается
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
</p>
даже в таком варике неполучается
Спустя 1 минута, 48 секунд (31.05.2012 - 22:48) rooor написал(а):
echo wordwrap($text, 30, "<br />\n");
Спустя 8 минут, 54 секунды (31.05.2012 - 22:57) sharomet написал(а):
echo wordwrap($text, 30, "<br />\n");
нет он переносы вставляет только в местах пробелов а если пробелов нет,?
вот просто взял какойто крендель и насыпал туда кучу букв одной строкой что тогда?
нет он переносы вставляет только в местах пробелов а если пробелов нет,?
вот просто взял какойто крендель и насыпал туда кучу букв одной строкой что тогда?
Спустя 8 минут, 39 секунд (31.05.2012 - 23:06) alexbel2404 написал(а):
что неее? тебе нужен перенос строк? тебе его показали!
Спустя 15 минут, 51 секунда (31.05.2012 - 23:21) sharomet написал(а):
Работает вот такой вариант но не совсем правельно если есть в тексте переносы то он посчитает не совсем правельно
$text=preg_replace("/(.{10})/","\${1}\n", $text);
Спустя 3 часа, 52 минуты (1.06.2012 - 03:13) Gabriel написал(а):
Цитата |
Переносит строку по указанному количеству символов. |
на*рен извращаться? дали тебе функцию которая прекрасно режет текст.
Спустя 34 минуты, 19 секунд (1.06.2012 - 03:48) inpost написал(а):
word-wrap:break-words; + width;
2 параметра = то, что тебе надо!
2 параметра = то, что тебе надо!
Спустя 4 часа, 24 минуты, 2 секунды (1.06.2012 - 08:12) rooor написал(а):
Цитата (sharomet @ 31.05.2012 - 22:57) |
echo wordwrap($text, 30, "<br />\n"); нет он переносы вставляет только в местах пробелов а если пробелов нет,? вот просто взял какойто крендель и насыпал туда кучу букв одной строкой что тогда? |
мда... ты даже не пытался её использовать...
Цитата |
нет он переносы вставляет только в местах пробелов |
откуда инфа? источник можно?
Спустя 2 часа, 19 минут, 52 секунды (1.06.2012 - 10:32) sharomet написал(а):
Цитата (rooor @ 1.06.2012 - 05:12) | ||||
мда... ты даже не пытался её использовать...
откуда инфа? источник можно? |
я вставил эту функцию в свой код, вот откуда инфа, он тупа вставляет br там где пробелы а текст не режит
$MSG=htmlspecialchars($MSG);
$MSG=wordwrap($MSG, 30, "<br />\n");
echo '
<div class="center">
<div class="cont">
<div class="msname"><strong><a href="user.php?id='.$UID2.'">'.htmlspecialchars($UName2.' '.$ULName2).'</a></strong></div>
<div class="mssee">
<p>'.$MSG.'</p>//тут
</div> и т д и т п
Спустя 14 минут, 26 секунд (1.06.2012 - 10:46) sharomet написал(а):
$MSG=wordwrap($MSG, 30, "<br />\n",true);
вот ответ
_____________
Место клизмы изменить нельзя!