wordwrap

(PHP 4 >= 4.0.2, PHP 5)

wordwrap - Выполняет перенос строки на данное количество символов с использованием символа разрыва строки.

Описание

string wordwrap ( string str [, int width [, string break [, boolean cut]]] )

Возвращает строку str с переносом в столбце с номером, заданном аргументом width. Строка разбивется с помощью аргумента break.

Аргументы width и break необязательны и по умолчанию равны 75 и '\n' соответственно.

Если аргумент cut установлен в 1, разрыв делается точно в заданной колонке. Поэтому если исходная строка содержит слово длиннее, чем заданная длина, то в этом случае слово будет разорвано. (См. второй пример).

Замечание: Необязательный аргумент cut был добавлен в PHP 4.0.3

Пример 1. Пример использования wordwrap()
$text = "The quick brown fox jumped over the lazy dog.";
$newtext = wordwrap($text, 20, "<br />\n");
echo "$newtext";

Этот пример выведет:

The quick brown fox<br />
jumped over the lazy<br />
dog.
Пример 2. Пример использования wordwrap()
$text = "Очень длинное слоооооооооооооооово.";
$newtext = wordwrap($text, 8, " ", 1);

echo "$newtext\n";

Этот пример выведет:

Очень длинное слоооооо оооооооо оово.
Пример 3. wordwrap() с поддержкой UTF-8
function utf8_wordwrap($str, $len = 75, $break = "\n", $cut=false){
    if(empty($str)) return "";
   
    $pattern="";
    if(!$cut)
        $pattern="/(\S{".$len."})/u";
    else
        $pattern="/(.{".$len."})/u";
   
    return preg_replace($pattern, "\${1}".$break, $str);
}

Смотрите также описание функций nl2br() и chunk_split().

Все функции строки
Описание на ru2.php.net
Описание на php.ru