CakePHP поставляется с кучей полезных хелперов и компонентов, которые обеспечивают удобные инструменты для обработки и манипулирования данными. Эти хелперы значимы не только для пользователя фреймворка, но и могут оказать большую помощь кому-нибудь кто пишет PHP приложения не используя CakePHP.
Вот несколько примеров:
Number хелпер содержит мощные функции для манипуляции с цифрами.
precision()
precision() возвращает число форматированное с уровнем точности. Например:
toReadableSize()
Эта функция принимает параметром размер файла и возвращает хорошо отформатированную строку с указанием размера в байтах, Кб, Мб, Гб и Тб. Например:
Другие функции хелпера Numer:
toPercentage(): Форматирует число в проценты.
format(): Форматирует число в денежный формат.
currency(): Форматирует число в денежный формат подписанные знаком валюты.
Смотрите файл cake/libs/view/helpers/number.php чтобы ознакомится с полным списком функций Number хелпера и их применением.
Text хелпер содержит полезные функции для манипуляции с текстовыми строками.
highlight()
Подсвечивает заданную фразу в тексте. Например:
This is the string in which word example will be highlighted
*(example будет подсвечен. хабр не дает это показать)
Примечание: вы должны определить стиля для класса “highlight” в вашем CSS. Например:
.highlight{background:#FFFF00;}
stripLinks()
Уберет все ссылки(<a href=….) из заданного текста. Пример:
autoLinkUrls()
Добавляет ссылки (<a href=….) в заданном тексте в котором строки начинаются с http:// и .
autoLinkEmails()
Добавляет email ссылки(<a href=”mailto:….) в заданном тексте.
truncate()
Обрезает строку до длины указанной во втором параметре и заменяет последние символы. Заботится о HTML тэгах и кодировке.
Например:
excerpt()
Создает выдержку из текста вокруг искомой фразы длиной определенной радиусом и добавляет окончание.
toList()
Создает список разделенный запятыми где два последних элемента соеденены ‘and’.
Смотрите файл cake/libs/view/helpers/text.php чтобы ознакомится с полным списком функций и их использованием.
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 для лучшего применения.
Вот несколько примеров:
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 для лучшего применения.