Spec-Zone.ru › CakePHP 3.6

Класс Текст

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

Пространство имен: 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
    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 deprecated
    Удаляет из заданного текста все ссылки (<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. Целью этой функции является замена всех пробелов и ненужной разметки вокруг заменённых, но не замещённых placeholder-ов функцией 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 = [] )

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

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

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

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

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

Параметры

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

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

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

Возвращает

строка

isMultibyte()source public static

isMultibyte( string $string )

Проверяет, содержит ли строка многобайтовые символы

Параметры

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

Возвращает

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

parseFileSize()source public static

parseFileSize( string $size , mixed $default = false )

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

Параметры

строка $size
Размер в удобочитаемой строке, например '5MB', '5M', '500B', '50kb' и т.д.
смешанное $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 deprecated

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 )

Многобайтовый и новый aware вариант wordwrap.

Параметры

строка $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 необязательно []
Массив параметров или целое число для обрезки текста.

Возвращает

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

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

$_defaultHtmlNoCountsource

protected static массив

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

[
    'style',
    'script'
]

$_defaultTransliteratorIdsource

protected static строка

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

Параметр

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

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

Spec-Zone.ru

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