Spec-Zone.ru › CakePHP 3.4

Класс Текст

Методы обработки текста.

Пространство имен: Cake\Утилиты
Расположение: Utility/Text.php

Краткое описание свойств

  • $_defaultTransliteratorId protected static
    string
    Строка идентификатора по умолчанию для транслитератора.

Краткое описание методов

  • _removeLastWord() protected static
    Удаляет последнее слово из входного текста.
  • _strlen() protected static
    Получение длины строки.
  • _substr() protected static
    Возвращает часть строки.
  • _wordWrap() protected static
    Совместимая с Unicode версия wordwrap как вспомогательный метод.
  • ascii() public static

    Преобразует десятичное значение многобайтовой строки символов в строку

  • cleanInsert() public static

    Очищает строку, отформатированную с помощью Text::insert(), с заданными $options в зависимости от ключа 'clean' в $options. По умолчанию используется метод text, но также доступен html. Цель этой функции — заменить все пробелы и ненужные метки вокруг заглушек, которые не были заменены Text::insert().

  • excerpt() public static

    Извлекает выдержку из текста, окружающего фразу с заданным количеством символов по обе стороны, определяемым радиусом.

  • getTransliteratorId() public static
    Получение идентификатора транслитератора по умолчанию.
  • highlight() public static

    Выделяет заданную фразу в тексте. Вы можете указать любое выражение в highlighter, которое может включать выражение \1 для включения найденной фразы $phrase.

  • insert() public static

    Заменяет заглушки переменных внутри $str с помощью любого заданного $data. Каждый ключ в массиве $data соответствует имени заглушки переменной в $str. Пример:

    Text::insert(':name is :age years old.', ['name' => 'Bob', 'age' => '65']);

    Возвращает: Боб — 65 лет.

  • isMultibyte() public static
    Проверка наличия в строке многобайтовых символов.
  • parseFileSize() public static
    Преобразует размер файла из удобочитаемой строки в байты.
  • setTransliteratorId() public static
    Устанавливает идентификатор транслитератора по умолчанию.
  • slug() public static

    Возвращает строку, в которой все пробелы заменены дефисами (по умолчанию), символы транслитерированы в ASCII-символы, а небуквенные символы удалены.

  • stripLinks() public static
    Удаляет из заданного текста все ссылки (<a href=....).
  • tail() public static
    Обрезает текст, начиная с конца.
  • toList() public static
    Создаёт список, разделённый запятыми, где последние два элемента объединены с 'и', формируя естественный язык.
  • tokenize() public static

    Токенизирует строку, используя $separator, игнорируя любые вхождения $separator, которые появляются между $leftBound и $rightBound.

  • transliterate() public static
    Транслитерирует строку.
  • truncate() public static
    Обрезает текст.
  • truncateByWidth() public static
    Обрезает текст с заданной шириной.
  • utf8() public static

    Преобразует многобайтовую строку символов в десятичное значение символа

  • uuid() public static
    Генерирует случайный UUID версии 4.
  • wordWrap() public static
    Совместимая с Unicode и новой строкой версия wordwrap.
  • wrap() public static
    Обёртывает текст до заданной ширины, при необходимости может обёртывать на границах слов.
  • wrapBlock() public static

    Обёртывает весь блок текста до заданной ширины, при необходимости может обёртывать на границах слов.

Подробное описание методов

_removeLastWord()source protected static

_removeLastWord( string $text )

Удаляет последнее слово из входного текста.

Параметры

строка $text
Входной текст

Возвращает

строка

_strlen()source protected static

_strlen( string $text , array $options )

Получение длины строки.

Параметры:

  • html Если значение true, HTML-сущности будут обрабатываться как декодированные символы.
  • trimWidth Если значение true, будет возвращена ширина.

Параметры

строка $text
Строка, длина которой проверяется
массив $options
Массив параметров.

Возвращает

целое число

_substr()source protected static

_substr( string $text , integer $start , integer $length , array $options )

Возвращает часть строки.

Параметры:

  • html Если значение true, HTML-сущности будут обрабатываться как декодированные символы.
  • trimWidth Если значение true, строка будет обрезена до указанной ширины.

Параметры

строка $text
Входная строка.
целое число $start
Позиция начала извлечения.
целое число $length
Желаемая длина.
массив $options
Массив параметров.

Возвращает

строка

_wordWrap()source protected static

_wordWrap( string $text , integer $width 72 , string $break "\n" , boolean $cut false )

Совместимая с Unicode версия wordwrap как вспомогательный метод.

Параметры

строка $text
Текст для форматирования.
целое число $width optional 72
Ширина обрезки. По умолчанию 72.
строка $break optional "\n"
Строка, используемая для разрыва строки. По умолчанию '\n'.
логическое значение $cut optional false
Если значение true, строка всегда обрезается до указанной ширины.

Возвращает

строка
Отформатированный текст.

ascii()source public static

ascii( array $array )

Преобразует десятичное значение многобайтовой строки символов в строку

Параметры

массив $array
Массив

Возвращает

строка
END_OF_DOCUMENT_MARKER

cleanInsert()source public static

cleanInsert( string $str , array $options )

Очищает строку, отформатированную с помощью Text::insert(), с заданными параметрами $options в зависимости от ключа 'clean' в $options. По умолчанию используется метод text, но также доступен метод html. Цель этой функции — заменить все пробелы и нежелательные метки разметки вокруг заготовок, которые не были заменены Text::insert().

Параметры

строка $str
Строка для очистки.
массив $options
Список параметров.

Возвращает

строка

См. также

\Cake\Utility\Text::insert()

excerpt()source public static

excerpt( string $text , string $phrase , integer $radius 100 , string $ellipsis '...' )

Извлекает выдержку из текста, окружающего фразу с количеством символов по обе стороны, определяемым радиусом.

Параметры

строка $text
Строка, в которой будет осуществляться поиск фразы
строка $phrase
Фраза, которая будет искаться
целое число $radius необязательно 100
Количество символов, которые будут возвращены по обе стороны от найденной фразы
строка $ellipsis необязательно '...'
Окончание, которое будет добавлено

Возвращает

строка
Изменённая строка

Ссылка

https://book.cakephp.org/3.0/ru/core-libraries/text.html#extracting-an-excerpt

getTransliteratorId()source public static

getTransliteratorId( )

Получение идентификатора транслитератора по умолчанию.

Возвращает

строка
Идентификатор транслитератора.

highlight()source public static

highlight( string $text , string|array $phrase , array $options [] )

Выделяет заданную фразу в тексте. Вы можете указать любое выражение в инструменте выделения, которое может включать выражение \1 для включения найденной фразы $phrase.

Параметры:

  • format Часть HTML, с помощью которой фраза будет выделена
  • html Если true, проигнорирует любые теги HTML, гарантируя, что будет выделен только правильный текст
  • regex Пользовательское правило регулярного выражения, используемое для сопоставления слов, по умолчанию '|$tag|iu'
  • limit Ограничение, необязательно, по умолчанию -1 (нет)

Параметры

строка $text
Текст, в котором будет осуществляться поиск фразы.
строка|массив $phrase
Фраза или фразы, которые будут искаться.
массив $options необязательно []
Массив HTML-атрибутов и параметров.

Возвращает

строка
Выделенный текст

Ссылка

https://book.cakephp.org/3.0/ru/core-libraries/text.html#highlighting-substrings

insert()source public static

insert( string $str , array $data , array $options [] )

Заменяет переменные заготовки внутри $str любыми заданными $data. Каждый ключ в массиве $data соответствует имени переменной заготовки в $str. Пример:

Text::insert(':name is :age years old.', ['name' => 'Bob', 'age' => '65']);

Результат: Боб — 65 лет.

Доступные $options:

  • before: Символ или строка перед именем переменной заготовки (по умолчанию :)
  • after: Символ или строка после имени переменной заготовки (по умолчанию null)
  • escape: Символ или строка, используемая для экранирования символа/строки before (по умолчанию \)
  • format: Регулярное выражение для сопоставления переменных заготовок. По умолчанию: /(?<!\\)\:%s/ (перезаписывает before, after, прерывает escape / clean)
  • clean: Булево значение или массив с инструкциями для Text::cleanInsert

Параметры

строка $str
Строка, содержащая переменные заготовки
массив $data

Массив ключ => значение, где каждый ключ представляет имя переменной заготовки, которое будет заменено на значение

массив $options необязательно []
Массив параметров, см. описание выше

Возвращает

строка

isMultibyte()source public static

isMultibyte( string $string )

Проверка на наличие многобайтовых символов в строке

Параметры

строка $string
Значение для проверки

Возвращает

логическое значение

parseFileSize()source public static

parseFileSize( string $size , mixed $default false )

Преобразование размера файла из удобочитаемой строки в байты

Параметры

строка $size
Размер в удобочитаемой строке, например, '5МБ', '5М', '500Б', '50кб' и т. д.
смешанное $default необязательно false
Значение, возвращаемое при использовании недопустимого размера, например, 'Неизвестный тип'

Возвращает

смешанное
Количество байтов как целое число при успехе, $default при ошибке, если не false

Исключения

InvalidArgumentException
При недопустимом типе единицы измерения.

Ссылка

https://book.cakephp.org/3.0/ru/core-libraries/text.html#Cake\Utility\Text::parseFileSize

setTransliteratorId()source public static

setTransliteratorId( string $transliteratorId )

Устанавливает идентификатор транслитератора по умолчанию.

Параметры

строка $transliteratorId
Идентификатор транслитератора.

slug()source public static

slug( string $string , array $options [] )

Возвращает строку, в которой все пробелы заменены на тире (по умолчанию), символы транслитерированы в ASCII-символы, а небуквенные символы удалены.

Параметры:

  • replacement: Строка замены. По умолчанию '-'.
  • transliteratorId: Действительный идентификатор транслитератора. Если по умолчанию null Text::$_defaultTransliteratorId, будет использоваться. Если false транслитерация не будет выполнена, будут удалены только небуквенные символы.
  • preserve: Конкретный небуквенный символ, который нужно сохранить. По умолчанию null. Например, этот параметр можно установить в '.' для создания чистых имён файлов.

Параметры

строка $string
строка, которую нужно преобразовать в slug
массив $options необязательно []

Если строка, она будет использована как символ замены или массив параметров.

Возвращает

строка

stripLinks()source public static

stripLinks( string $text )

Удаляет из данного текста все ссылки (<a href=....).

Предупреждение Этот метод не является надёжным решением для предотвращения XSS или вредоносного HTML.

Устарело

3.2.12 Этот метод будет удалён в версии 4.0.0

Параметры

строка $text
Текст

Возвращает

строка
Текст без ссылок

tail()source public static

tail( string $text , integer $length 100 , array $options [] )

Усекает текст, начиная с конца.

Усекает строку до длины $length и заменяет первые символы многоточием, если текст длиннее length.

Параметры:

  • ellipsis Будет использоваться в качестве начала и предварять усечённую строку
  • exact Если false, $text не будет усекаться посередине слова

Параметры

строка $text
Строка для усечения.
целое число $length необязательно 100
Длина возвращаемой строки, включая многоточие.
массив $options необязательно []
Массив параметров.

Возвращает

строка
Усечённая строка.

toList()source public static

toList( array $list , string|null $and null , string $separator ', ' )

Создаёт список, разделённый запятыми, где последние два элемента объединены со словом «и», образуя естественный язык.

Параметры

массив $list
Список для объединения.
строка|null $and необязательно null
Слово, используемое для соединения последних двух элементов. По умолчанию «и».
строка $separator необязательно ', '
Разделитель, используемый для объединения остальных элементов. По умолчанию ', '.

Возвращает

строка
Объединённая строка.

Ссылка

https://book.cakephp.org/3.0/ru/core-libraries/text.html#converting-an-array-to-sentence-form

tokenize()source public static

tokenize( string $data , string $separator ',' , string $leftBound '(' , string $rightBound ')' )

Разбивает строку на токены, используя $separator, игнорируя любые вхождения $separator, которые появляются между $leftBound и $rightBound.

Параметры

строка $data
Данные для разбиения на токены.
строка $separator необязательно ','
Токен для разбиения данных.
строка $leftBound необязательно '('
Левая граница, в которой разделители игнорируются.
строка $rightBound необязательно ')'
Правая граница, в которой разделители игнорируются.

Возвращает

массив|строка
Массив токенов в $data или исходный ввод, если он пуст.

transliterate()source public static

transliterate( string $string , string|null $transliteratorId null )

Транслитерировать строку.

Параметры

строка $string
Строка для транслитерации.
строка|null $transliteratorId необязательно null

Идентификатор транслитератора. Если null, будет использован Text::$_defaultTransliteratorId.

Возвращает

строка

См. также

https://secure.php.net/manual/ru/transliterator.transliterate.php

truncate()source public static

truncate( string $text , integer $length 100 , array $options [] )

Обрезает текст.

Урезает строку до длины $length и заменяет последние символы многоточием, если текст длиннее, чем длина.

Параметры:

  • ellipsis Будет использоваться в качестве окончания и добавлен к обрезанной строке
  • exact Если false, $text не будет обрезаться посередине слова
  • html Если true, теги HTML будут обработаны корректно
  • trimWidth Если true, $text будет обрезан с заданной шириной

Параметры

строка $text
Строка для обрезки.
целое число $length необязательно 100
Длина возвращаемой строки, включая многоточие.
массив $options необязательно []
Массив атрибутов HTML и параметров.

Возвращает

строка
Обрезанная строка.

Ссылка

https://book.cakephp.org/3.0/ru/core-libraries/text.html#truncating-text

truncateByWidth()source public static

truncateByWidth( string $text , integer $length 100 , array $options [] )

Обрезка текста с заданной шириной.

Параметры

строка $text
Строка для обрезки.
целое число $length необязательно 100
Длина возвращаемой строки, включая многоточие.
массив $options необязательно []
Массив атрибутов HTML и параметров.

Возвращает

строка
Обрезанная строка.

См. также

\Cake\Utility\Text::truncate()

utf8()source public static

utf8( string $string )

Преобразует строку с многобайтовыми символами в десятичное значение символа

Параметры

строка $string
Строка для преобразования.

Возвращает

массив

uuid()source public static

uuid( )

Генерирует случайный UUID версии 4

Предупреждение: Этот метод не следует использовать в качестве случайного числа для криптографических операций. Вместо этого следует использовать расширения openssl или mcrypt.

Возвращает

строка
UUID RFC 4122

См. также

https://www.ietf.org/rfc/rfc4122.txt

Авторские права

Matt Farina MIT License https://github.com/lootils/uuid/blob/master/LICENSE

wordWrap()source public static

wordWrap( string $text , integer $width 72 , string $break "\n" , boolean $cut false )

Версия wordwrap, учитывающая Unicode и символы новой строки.

Параметры

строка $text
Текст для форматирования.
целое число $width необязательно 72
Ширина для обрезки. По умолчанию 72.
строка $break необязательно "\n"
Символ, используемый для разрыва строки. По умолчанию '\n'.
логическое значение $cut необязательно false
Если обрезка установлена в true, строка всегда обрезается на заданной ширине.

Возвращает

строка
Отформатированный текст.

wrap()source public static

wrap( string $text , array|integer $options [] )

Обрезает текст до заданной ширины, может обрезать по границам слов.

Параметры

  • width Ширина для обрезки. По умолчанию 72.
  • wordWrap Обрезать только по границам слов (пробелам). По умолчанию true.
  • indent Строка для отступа. По умолчанию null.
  • indentAt Индекс отступа, начиная с 0. По умолчанию 0.

Параметры

строка $text
Текст для форматирования.
массив|целое число $options необязательно []
Массив параметров или целое число для обрезки текста.

Возвращает

строка
Отформатированный текст.

wrapBlock()source public static

wrapBlock( string $text , array|integer $options [] )

Обрезает весь блок текста до заданной ширины, может обрезать по границам слов.

Параметры

  • width Ширина для обрезки. По умолчанию 72.
  • wordWrap Обрезать только по границам слов (пробелам). По умолчанию true.
  • indent Строка для отступа. По умолчанию null.
  • indentAt Индекс отступа, начиная с 0. По умолчанию 0.

Параметры

строка $text
Текст для форматирования.
массив|целое число $options необязательно []
Массив параметров или целое число для обрезки текста.

Возвращает

строка
Отформатированный текст.

Подробное описание свойств

$_defaultTransliteratorIdsource

protected static строка

Идентификатор по умолчанию для транслитератора.

Параметр

строка $_defaultTransliteratorId Идентификатор транслитератора.
'Any-Latin; Latin-ASCII; [\u0080-\u7fff] remove'

© 2005–2017 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/3.4/class-Cake.Utility.Text.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API