Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ограничение символов на одну строку. 
:(
    Опции темы
Akonkagva1
Дата 30.7.2009, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 22.12.2008
Где: Латвия

Репутация: нет
Всего: нет



Здравствуйте, я пишу небольшую блог систему, мне требуеться создать ограничение на максимальное колличесто символов в одной строке.
Пример №1
Код

<table border="1" width="50%" id="table1">
 <tr>

  <td>111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111</td>
  <td>&nbsp;</td>
 </tr>
</table>

Единички уходят очень далеко вглубь документа.

Я стараюсь с помощью PHP написать разделитель текста.
Чтобы через каждый n символов ставился тег </br>
Код

$message_we_got= $_POST['main_text_msg'];
$length_of_main_string = strlen($message_we_got);
     for($x=0;$x<$length_of_main_string;$x++)
     {
       //Вопрос как создать код который бы вставлял <br> через каждые 20 символов ?
     }
?>

PM MAIL WWW Skype   Вверх
Staind
Дата 30.7.2009, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: 2
Всего: 3



Если регуляркой, то вот:
Код

$string = preg_replace('#(.{20})#', '$1'.'<br>', $string);

Скрипт для UTF-8
Код

$string = preg_replace('#(.{20})#u', '$1'.'<br>', $string);

За место числа 20 выставите нужное вам число.

Можно для удобства так:
Код

function stringdesc($string, $n)
{
    $string = preg_replace('#(.{'.$n.'})#', '$1'.'<br>', $string);
    return $string;
}

, где n - это максимальное число символов в строке.

Это сообщение отредактировал(а) Staind - 30.7.2009, 21:51
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
Akonkagva1
Дата 31.7.2009, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 22.12.2008
Где: Латвия

Репутация: нет
Всего: нет



Фантастика, огромное вам спасибо 
PM MAIL WWW Skype   Вверх
Ипатьев
Дата 31.7.2009, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



wordwrap()
Но лично я никогда этим не занимаюсь - все равно такой текст будет удален модератором. 
а автоматическая разбивка всегда подгадит чему-то полезному. Той же ссылке.



Это сообщение отредактировал(а) Ипатьев - 31.7.2009, 12:01
PM MAIL   Вверх
icewind
Дата 31.7.2009, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 11.4.2009
Где: Ростов-на-Дону

Репутация: 20
Всего: 20



wordwrap не поддерживает юникод. На мой взгляд если уж такая проблема есть смотреть регулярками. Чтоб не ломать отображение текста вместо html тэга <br /> можно воткнуть символ начала строки \n. В случае если текст и так отображается корректно он отобразится нормально, а если нет броузер при указаной ширине родительского элемента сам выполнит перенос на новую строку


--------------------
user posted image
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0653 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.