Spec-Zone.ru › CakePHP 3.2

Класс Текст

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

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

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

  • $_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

    Выделяет заданную фразу в тексте. Вы можете указать любое выражение в highlight, которое может включать выражение \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 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 необязательно '...'
Окончание, которое будет добавленно

Возвращает

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

Ссылка

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

getTransliteratorId()source public static

getTransliteratorId( )

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

Возвращает

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

highlight()source public static

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

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

Опции:

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

Параметры

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

Возвращает

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

Ссылка

http://book.cakephp.org/3.0/ru/core-libraries/string.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
Размер в читаемой строке, например '5MB', '5M', '500B', '50kb' и т. д.
смешанный $default необязательно false
Значение, возвращаемое при использовании недопустимого размера, например 'Неизвестный тип'

Возвращает

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

Исключение

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

Ссылка

http://book.cakephp.org/3.0/ru/core-libraries/helpers/text.html

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 необязательно []
Массив опций.

Возвращает

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

toList()source public static

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

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

Параметры

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

Возвращает

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

Ссылка

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

tokenize()source public static

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

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

Параметры

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

Возвращает

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

transliterate()source public static

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

Транслитерация строки.

Параметры

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

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

Возвращает

string

См. также

http://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 будет обрезан по ширине

Параметры

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

Возвращает

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

Ссылка

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

truncateByWidth()source public static

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

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

Параметры

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

Возвращает

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

См. также

\Cake\Utility\Text::truncate()

utf8()source public static

utf8( string $string )

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

Параметры

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

Возвращает

array

uuid()source public static

uuid( )

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

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

Возвращает

string
UUID в формате RFC 4122

См. также

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

Параметры

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

Возвращает

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

wrap()source public static

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

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

Параметры

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

Параметры

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

Возвращает

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

wrapBlock()source public static

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

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

Параметры

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

Параметры

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

Возвращает

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

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

$_defaultTransliteratorIdsource

protected static string

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

Параметр

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

© 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.
http://api.cakephp.org/3.2/class-Cake.Utility.Text.html

Spec-Zone.ru

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