Spec-Zone.ru › CakePHP 3.5

Класс Текст

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

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

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

  • $_defaultHtmlNoCount protected static
    array
    По умолчанию теги HTML, которые не должны учитываться при обрезке текста.
  • $_defaultTransliteratorId protected static
    string
    Строка идентификатора по умолчанию для транслитератора.

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

  • _removeLastWord() protected static
    Удаляет последнее слово из входного текста.
  • _strlen() protected static
    Получение длины строки.
  • _substr() protected static
    Возвращает часть строки.
  • _wordWrap() protected static
    Версия wordwrap, учитывающая Unicode, как вспомогательный метод.
  • 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
    Версия wordwrap, учитывающая Unicode и символы новой строки.
  • 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 )

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

Параметры

строка $text
Текст для форматирования.
целое число $width по умолчанию 72
Ширина обрезки. По умолчанию 72.
строка $break по умолчанию "\n"
Символ, используемый для разрыва строки. По умолчанию '\n'.
логическое значение $cut по умолчанию 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: Символ или строка, используемая для экранирования символа/строки перед (По умолчанию \)
  • 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 и заменяет первые символы многоточием, если текст длиннее длины.

Параметры:

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

Параметры

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

Возвращает

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

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/en/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.

Он также не должен использоваться для создания идентификаторов, имеющих последствия для безопасности, таких как «неугадываемые» идентификаторы URL. Вместо этого следует использовать Security::randomBytes() для этой цели.

Возвращает

строка
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, учитывающая юникод и символы новой строки.

Параметры

строка $text
Текст для форматирования.
целое число $width необязательно 72
Ширина обрезки. По умолчанию 72.
строка $break необязательно "\n"
Строка, используемая для разрыва строки. По умолчанию «\n».
логическое значение $cut необязательно false
Если cut = 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 необязательно []
Массив опций или целое число для обрезки текста.

Возвращает

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

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

$_defaultHtmlNoCountsource

protected static массив

Теги HTML по умолчанию, которые не должны учитываться при усечении текста.

[
    'style',
    'script'
]

$_defaultTransliteratorIdsource

protected static строка

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

Параметр

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

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

Spec-Zone.ru

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