За последние 24 часа нас посетили 55011 программистов и 1776 роботов. Сейчас ищут 875 программистов ...

Добавление пробелов в текст

Тема в разделе "PHP для новичков", создана пользователем Nazorei, 23 апр 2009.

  1. Nazorei

    Nazorei Активный пользователь

    С нами с:
    1 фев 2007
    Сообщения:
    228
    Симпатии:
    0
    Имеется чат, поток идет в DIV фиксированного размера (300px)
    если ввести в качестве сообщения текст состояший из сплошных символов, без пробелов,
    (например: wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww)
    который не вмещается в этом див, то произойдет растяжение этого DIV-а

    как на стороне сервера экономно проверить полученный текст и при необходимости добавить пробел/пробелы?

    к примеру DIV width 300px
    при 30 символах идет уже растяжка

    нужно может составить регулярное выражение или ...
    посоветуйте наилучшее решение этой проблемы, заранее благодарю.
     
  2. Nazorei

    Nazorei Активный пользователь

    С нами с:
    1 фев 2007
    Сообщения:
    228
    Симпатии:
    0
    флоппик
    это совсем не то...
     
  3. Cron

    Cron Активный пользователь

    С нами с:
    10 июл 2008
    Сообщения:
    289
    Симпатии:
    0
    Адрес:
    Украина, Сумы
    Заставить DIV не растягиваться при слишком широком содержимом - вопрос верстки странички.
    http://www.htmlbook.ru/css/overflow.html
     
  4. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    А причем тут РНР?
    Ставите в CSS свойство overflow: auto для этого div и радуетесь жизни.
     
  5. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Вообще, в русском языке есть слова из 26 букв, поэтому я разбиваю слова wordwrap'ом, если они длиннее 26 символов.
    PHP:
    1.  
    2. <?php
    3. $string = preg_replace('~([^\d].)\1\1~is', '', $string); //Превращаем АААААААААА в ААА
    4. $string = preg_replace_callback('~((.)[^\s\-]{15,})~is', create_function('$matches', 'return wordwrap($matches[0], 26, " ", 1);'), $string); //Разбиваем хрюнделей
    5.  
     
  6. Nazorei

    Nazorei Активный пользователь

    С нами с:
    1 фев 2007
    Сообщения:
    228
    Симпатии:
    0
    спасибо огромное