Класс CakeText
Методы обработки строк.
Непосредственные подклассы
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение: Cake/Utility/CakeText.php
Краткое описание методов
- Вспомогательный метод для wordWrap().
-
Очищает строку, отформатированную с помощью CakeText::insert(), с заданными $options в зависимости от ключа 'clean' в $options. По умолчанию используется метод text, но также доступен html. Цель этой функции — заменить все пробелы и ненужные теги вокруг замененных плацехолдеров, которые не были заменены CakeText::insert().
-
Извлекает фрагмент текста, окружающий фразу, с количеством символов с каждой стороны, определяемым радиусом.
-
Выделяет заданную фразу в тексте. Вы можете указать любое выражение в выделении, которое может включать выражение \1 для включения найденной фразы $phrase.
-
Заменяет переменные плацехолдеры внутри $str с заданными $data. Каждый ключ в массиве $data соответствует имени переменного плацехолдера в $str. Пример:
CakeText::insert(':name is :age years old.', array('name' => 'Bob', '65'));Возвращает: Боб 65 лет. - Удаляет из заданного текста все ссылки (<a href=....).
- Обрезает текст, начиная с конца.
- Создает список, разделенный запятыми, где последние два элемента объединяются со словом «и», образуя естественный язык.
-
Токенизирует строку с помощью $separator, игнорируя любые экземпляры $separator, которые появляются между $leftBound и $rightBound.
- Обрезает текст.
- Генерирует случайный UUID
- Версия wordwrap, учитывающая Unicode.
- Обертывает текст до определенной ширины, необязательно обрезая по словам.
Подробное описание методов
_wordWrap()source protected static
_wordWrap( string $text , integer $width 72 , string $break "\n" , boolean $cut false )
Вспомогательный метод для wordWrap().
Параметры
- строка
$text - Текст для форматирования.
- целое число
$widthопционально 72 - Ширина обертывания. По умолчанию 72.
- строка
$breakопционально "\n" - Строка разрыва используется в качестве параметра разрыва. По умолчанию '\n'.
- логический
$cutопционально false - Если обрезка установлена в true, строка всегда будет обрезана до указанной ширины.
Возвращает
строкаОтформатированный текст.
cleanInsert()source public static
cleanInsert( string $str , array $options )
Очищает строку, отформатированную с помощью CakeText::insert(), с заданными $options в зависимости от ключа 'clean' в $options. По умолчанию используется метод text, но также доступен html. Цель этой функции — заменить все пробелы и ненужные теги вокруг замененных плацехолдеров, которые не были заменены CakeText::insert().
Параметры
- строка
$str - CakeText для очистки.
- массив
$options - Список параметров.
Возвращает
строкаСм. также
CakeText::insert()excerpt()source public static
excerpt( string $text , string $phrase , integer $radius 100 , string $ellipsis '...' )
Извлекает фрагмент текста, окружающий фразу, с количеством символов с каждой стороны, определяемым радиусом.
Параметры
- строка
$text - CakeText, в котором будет производиться поиск фразы
- строка
$phrase - Фраза, которая будет искомой
- целое число
$radiusопционально 100 - Количество символов, которые будут возвращены с каждой стороны найденной фразы
- строка
$ellipsisопционально '...' - Окончание, которое будет добавлено
Возвращает
строкаИзмененная строка
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/text.html#TextHelper::excerpthighlight()source public static
highlight( string $text , string|array $phrase , array $options array() )
Выделяет заданную фразу в тексте. Вы можете указать любое выражение в выделении, которое может включать выражение \1 для включения найденной фразы $phrase.
Параметры:
-
formatЧасть HTML, с которой будет выделена фраза -
htmlЕсли true, игнорируются любые теги HTML, гарантируя, что выделена только правильная часть текста -
regexСпециальное правило регулярного выражения, используемое для сопоставления слов, по умолчанию '|$tag|iu'
Параметры
- строка
$text - Текст, в котором будет осуществлен поиск фразы.
- строка|массив
$phrase - Искомая фраза или фразы.
- массив
$optionsопционально массив() - Массив HTML атрибутов и параметров.
Возвращает
строкаВыделенный текст
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/text.html#TextHelper::highlightinsert()source public static
insert( string $str , array $data , array $options array() )
Заменяет переменные плацехолдеры внутри $str с заданными $data. Каждый ключ в массиве $data соответствует имени переменного плацехолдера в $str. Пример: CakeText::insert(':name is :age years old.', array('name' => 'Bob', '65')); Возвращает: Боб 65 лет.
Доступные $options:
- before: Символ или строка перед именем переменного плацехолдера (По умолчанию
:) - after: Символ или строка после имени переменного плацехолдера (По умолчанию null)
- escape: Символ или строка, используемая для экранирования символа/строки before (По умолчанию
\) - format: Регулярное выражение для сопоставления переменных плацехолдеров. По умолчанию:
/(?<!\\)\:%s/(Перезаписывает before, after, breaks escape / clean) - clean: Логическое значение или массив с инструкциями для CakeText::cleanInsert
Параметры
- строка
$str - Строка, содержащая переменные плацехолдеры
- массив
$data Массив ключ => значение, где каждый ключ представляет имя переменного плацехолдера, который будет заменен значением val
- массив
$optionsопционально массив() - Массив параметров, см. описание выше
Возвращает
строкаstripLinks()source public static
stripLinks( string $text )
Удаляет из заданного текста все ссылки (<a href=....).
Параметры
- строка
$text - Текст
Возвращает
строкаТекст без ссылок
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/text.html#TextHelper::stripLinkstail()source public static
tail( string $text , integer $length 100 , array $options array() )
Усекает текст, начиная с конца.
Укорачивает строку до длины $length и заменяет первые символы многоточием, если текст длиннее заданной длины.
Параметры:
-
ellipsisБудет использоваться в качестве начала и предварять усечённую строку -
exactЕсли false, $text не будет усекаться на середине слова
Параметры
- строка
$text - Текст CakeText для усечения.
- целое число
$lengthнеобязательно 100 - Длина возвращаемой строки, включая многоточие.
- массив
$optionsнеобязательно массив() - Массив опций.
Возвращаемое значение
строкаУсечённая строка.
toList()source public static
toList( array $list , string $and null , string $separator ', ' )
Создаёт список, разделённый запятыми, где последние два элемента объединяются со словом «и», образуя естественный язык.
Параметры
- массив
$list - Список для объединения.
- строка
$andнеобязательно null - Слово, используемое для объединения последних двух элементов. По умолчанию «и».
- строка
$separatorнеобязательно ', ' - Разделитель, используемый для объединения остальных элементов. По умолчанию запятая и пробел.
Возвращаемое значение
строкаОбъединённая строка.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/text.html#TextHelper::toListtokenize()source public static
tokenize( string $data , string $separator ',' , string $leftBound '(' , string $rightBound ')' ) Токенизирует строку, используя $separator, игнорируя любые вхождения $separator, которые появляются между $leftBound и $rightBound.
Параметры
- строка
$data - Данные для токенизации.
- строка
$separatorнеобязательно ',' - Токен для разделения данных.
- строка
$leftBoundнеобязательно '(' - Левая граница для игнорирования разделителей.
- строка
$rightBoundнеобязательно ')' - Правая граница для игнорирования разделителей.
Возвращаемое значение
смешанный типМассив токенов в $data или исходный ввод, если он пуст.
truncate()source public static
truncate( string $text , integer $length 100 , array $options array() )
Усекает текст.
Укорачивает строку до длины $length и заменяет последние символы многоточием, если текст длиннее заданной длины.
Параметры:
-
ellipsisБудет использоваться в качестве окончания и добавляться к обрезанной строке (endingустарело) -
exactЕсли false, $text не будет усекаться на середине слова -
htmlЕсли true, теги HTML будут обработаны корректно
Параметры
- строка
$text - Текст CakeText для усечения.
- целое число
$lengthнеобязательно 100 - Длина возвращаемой строки, включая многоточие.
- массив
$optionsнеобязательно массив() - Массив атрибутов HTML и опций.
Возвращаемое значение
строкаУсечённая строка.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/text.html#TextHelper::truncateuuid()source public static
uuid( )
Генерирует случайный UUID
Возвращаемое значение
строкаUUID RFC 4122
См. также
http://www.ietf.org/rfc/rfc4122.txtwordWrap()source public static
wordWrap( string $text , integer $width 72 , string $break "\n" , boolean $cut false )
Версия wordwrap, учитывающая юникод.
Параметры
- строка
$text - Текст для форматирования.
- целое число
$widthнеобязательно 72 - Ширина для обрезки. По умолчанию 72.
- строка
$breakнеобязательно "\n" - Строка разрыва. По умолчанию «\n».
- булево
$cutнеобязательно false - Если установлено true, строка всегда обрезается до указанной ширины.
Возвращаемое значение
строкаОтформатированный текст.
wrap()source public static
wrap( string $text , array|integer $options array() )
Обрезает текст до определённой ширины, необязательно обрезая по границам слов.
Параметры
-
widthШирина обрезки. По умолчанию 72. -
wordWrapОбрезка только по границам слов (пробелы). По умолчанию true. -
indentТекст CakeText для отступа. По умолчанию null. -
indentAtИндекс отступа, начиная с 0. По умолчанию 0.
Параметры
- строка
$text - Текст для форматирования.
- массив|целое число
$optionsнеобязательно массив() - Массив опций или целое число для обрезки.
Возвращаемое значение
строкаОтформатированный текст.
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-CakeText.html