Как стать автором
Обновить

Хелперы. Полезные манипуляции со строками

Время на прочтение3 мин
Количество просмотров6.1K
Автор оригинала: DevArticles.In
CakePHP поставляется с кучей полезных хелперов и компонентов, которые обеспечивают удобные инструменты для обработки и манипулирования данными. Эти хелперы значимы не только для пользователя фреймворка, но и могут оказать большую помощь кому-нибудь кто пишет PHP приложения не используя CakePHP.


Вот несколько примеров:

NumberHelper


Number хелпер содержит мощные функции для манипуляции с цифрами.

precision()

precision() возвращает число форматированное с уровнем точности. Например:
echo $number->precision(25.02558, 3);
//выведет
25.026

toReadableSize()

Эта функция принимает параметром размер файла и возвращает хорошо отформатированную строку с указанием размера в байтах, Кб, Мб, Гб и Тб. Например:
echo $number->toReadableSize(2502558);
//выведет
2.39 MB

Другие функции хелпера Numer:
toPercentage(): Форматирует число в проценты.
format(): Форматирует число в денежный формат.
currency(): Форматирует число в денежный формат подписанные знаком валюты.

Смотрите файл cake/libs/view/helpers/number.php чтобы ознакомится с полным списком функций Number хелпера и их применением.

TextHelper


Text хелпер содержит полезные функции для манипуляции с текстовыми строками.

highlight()

Подсвечивает заданную фразу в тексте. Например:
echo $text->highlight("Word example will be highlighted","example");
//выведет

This is the string in which word example will be highlighted
*(example будет подсвечен. хабр не дает это показать)

Примечание: вы должны определить стиля для класса “highlight” в вашем CSS. Например:
.highlight{background:#FFFF00;}

stripLinks()

Уберет все ссылки(<a href=….) из заданного текста. Пример:
echo $text->stripLinks('Dont show the clickable link on <a href="http://www.givebackindia.com">Online Charity Mall</a>');
//выведет
Dont show the clickable link on Online Charity Mall

autoLinkUrls()

Добавляет ссылки (<a href=….) в заданном тексте в котором строки начинаются с http:// и .

autoLinkEmails()

Добавляет email ссылки(<a href=”mailto:….) в заданном тексте.

truncate()

Обрезает строку до длины указанной во втором параметре и заменяет последние символы. Заботится о HTML тэгах и кодировке.

Например:
echo $text->truncate("Cuts a string to the length of given second argument and replaces the last characters. Takes care of HTML tags and encoding.",50);
//outputs
Cuts a string to the length of given second arg...

excerpt()

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

toList()

Создает список разделенный запятыми где два последних элемента соеденены ‘and’.

Смотрите файл cake/libs/view/helpers/text.php чтобы ознакомится с полным списком функций и их использованием.

Time Helper


convert()

Конвертирует данное время(во временной зоне сервера) в пользовательское локальное время со сдвигом от GMT.

nice()

Возвращает хорошо форматированную строку для данной Datetime строки.

niceShort()

Возвращает форматированную строку даты в виде описания.

isToday()

Возвращает true если данная datetime строка равна текущей дате.

isThisWeek()

Возвращает true если данная дата на текущей неделе.

isThisMonth()

Возвращает true если данная дата в текущем месяце.

isThisYear()

Возвращает true если данная дата в текущем году.

wasYesterday()

Возвращает true если данная дата была вчера.

isTomorrow()

Возвращает true если данная дата будет завтра.

timeAgoInWords()

Возвращает относительную дата или форматированную в зависимости от разницы между текущей датой и данной.

format()

Возвращает UNIX timestamp, данный либо в UNIX timestamp или правильной strtotime() строке.

Смотрите файл cake/libs/view/helpers/time.php чтобы ознакомится с полным списком функций и их использованием.

Также есть и другие хелперы, некоторые из них(например html, form, javascript, ajax) каркас отображений в CakePHP. Вам необходимо посмотреть на них в cake/libs/view/helpers для лучшего применения.
Теги:
Хабы:
+9
Комментарии22

Публикации

Истории

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн