Класс CacheHelper
CacheHelper помогает создавать кэширование полных страниц.
При использовании CacheHelper вы не вызываете его методы, они все автоматически вызываются View и используют настройки $cacheAction, установленные в контроллере.
- Объект
-
Помощник -
AppHelper -
CacheHelper
Устаревший: Этот класс будет удалён в версии 3.0. Вам следует использовать отдельный кэш ответов, например, Varnish.
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/helpers/cache.html
Расположение: Cake/View/Helper/CacheHelper.php
Подробное описание методов
_enabledsource protected
_enabled( )
Включен ли CacheHelper? следует ли обрабатывать файлы + вывод.
Возвращает
booleanbool
_parseContentsource protected
_parseContent( string $file , string $out )
Обработать файл + вывод. Сопоставляет теги nocache между текущим выводом и текущими файлами, хранит ссылку на файл, поэтому сгенерированный вывод может быть заменён содержимым файла при записи файла кэша.
Параметры
- string
$file - Имя файла для обработки.
- string
$out - Вывод для файла.
Возвращает
stringОбновлённое содержимое.
_parseFilesource protected
_parseFile( string $file , string $cache )
Обработка файла, поиск тегов nocache.
Параметры
- string
$file - Файл, который необходимо обработать.
- string
$cache - Кэшированное содержимое
_parseOutputsource protected
_parseOutput( string $cache )
Обработать вывод и заменить теги кэша.
Параметры
- string
$cache - Вывод для замены содержимого.
Возвращает
stringс произведенными заменками
_replaceSectionsource protected
_replaceSection( )
Обрабатывает вывод из представления с тегами кэша и нумерует секции. Это помогает решить проблемы с пустым/дублирующимся содержимым.
Возвращает
stringСодержимое с заменёнными тегами cake:nocache.
_stripTagssource protected
_stripTags( string $content )
Удалить теги cake:nocache из строки. Так как View::render() удаляет только теги nocache без номера, удалите все пронумерованные. Это дополнение к _replaceSection.
Параметры
- string
$content - Строка для удаления тегов.
Возвращает
stringСтрока с удаленными тегами.
_writeFilesource protected
_writeFile( string $content , string $timestamp , boolean|null $useCallbacks false )
Записать кэшированную версию файла.
Параметры
- string
$content - Содержимое представления для записи в файл кэша.
- string
$timestamp - Срок действия для файла кэша.
- boolean|null
$useCallbacksопционально false - Включать ли в кэшированный файл инструкции, выполняющие обратные вызовы, иначе null.
Возвращает
booleanУспешность кэширования представления.
afterLayoutsource public
afterLayout( string $layoutFile )
Обрабатывает файл шаблона и сохраняет содержимое для построения файла кэша.
Параметры
- string
$layoutFile - Имя файла шаблона.
Переопределяет
Helper::afterLayout() afterRenderFilesource public
afterRenderFile( string $viewFile , string $output )
Обрабатывает файл представления и сохраняет содержимое для построения файла кэша.
Параметры
- string
$viewFile - Имя файла представления.
- string
$output - Вывод для файла.
Возвращает
stringОбновлённое содержимое.
Переопределяет
Helper::afterRenderFile() cachesource public
cache( string $file , string $out )
Основной метод, используемый для кэширования представления.
Параметры
- string
$file - Файл для кэширования
- string
$out - вывод для кэширования
Возвращает
stringвывод представления
Исключения
ExceptionЕсли режим отладки включен, и запись в файл кэша не удалась.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/cache.htmlМетоды, унаследованные от Helper
__callsource public
__call( string $method , array $params )
Обеспечивает некритические ошибки при вызовах отсутствующих методов.
Параметры
- string
$method - Метод для вызова
- array
$params - Массив параметров для метода.
__constructsource public
__construct( View $View , array $settings array() )
Конструктор по умолчанию
Параметры
-
View$View - Представление, к которому прикрепляется помощник.
- array
$settingsопционально array() - Настройки конфигурации помощника.
Переопределяет
Object::__construct() __getsource public
__get( string $name )
Лениво загружает помощников. Также предоставляет доступ к устаревшим свойствам запроса.
Параметры
- string
$name - Имя свойства, к которому производится доступ.
Возвращает
mixedПомощник или найденное свойство в $name
__setsource public
__set( string $name , mixed $value )
Обеспечивает обратную совместимость для установки значений в объект запроса.
Параметры
- string
$name - Имя свойства, к которому производится доступ.
- mixed
$value - Значение для установки.
_confirmsource protected
_confirm( string $message , string $okCode , string $cancelCode '' , array $options array() )
Возвращает строку, используемую в качестве обработчика onclick для диалогов подтверждения.
Параметры
- string
$message - Сообщение для отображения
- string
$okCode - Код, который будет выполнен после выбора 'OK'
- string
$cancelCodeопционально '' - Код, который будет выполнен после выбора 'Отмена'
- array
$optionsопционально array() - Массив опций
Возвращает
stringJS код onclick
_encodeUrlsource protected
_encodeUrl( string $url )
Кодирует URL для использования в атрибутах HTML.
Параметры
- строка
$url - URL для кодирования.
Возвращает
stringURL, закодированный для контекстов URL и HTML.
_formatAttributesource protected
_formatAttribute( string $key , string $value , boolean $escape true )
Форматирует отдельный атрибут и возвращает строковое значение составленного атрибута. Работает с минимализированными атрибутами, которые имеют то же значение, что и их имя, такие как 'disabled' и 'checked'.
Параметры
- строка
$key - Имя атрибута для создания
- строка
$value - Значение атрибута для создания.
- булево
$escapeнеобязательно true - Определяет, нужно ли экранировать значение.
Возвращает
stringСоставленный атрибут.
_initInputFieldsource protected
_initInputField( string $field , array $options array() )
Устанавливает значения по умолчанию для тега input. Установит атрибуты name, value и id для массива атрибутов html.
Параметры
- строка
$field - Имя поля для инициализации.
- массив
$optionsнеобязательно array() - Массив параметров для инициализации поля ввода.
Возвращает
arrayМассив параметров для поля формы.
_namesource protected
_name( array|string $options array() , string $field null , string $key 'name' )
Получает имя поля ввода для текущего тега. Создаёт атрибуты имени input, используя формат CakePHP's data[Model][field].
Параметры
- массив|строка
$optionsнеобязательно array() - Если массив, должен быть массивом атрибутов, к которым необходимо добавить $key. Если строка или null, будет использоваться как сущность View.
- строка
$fieldнеобязательно null - Имя поля.
- строка
$keyнеобязательно 'name' - Имя атрибута для установки, по умолчанию 'name'.
Возвращает
mixedЕсли для $options был передан массив, будет возвращён массив с установленным $key. Если была передана строка, будет возвращена строка.
_parseAttributessource protected
_parseAttributes( array $options , array $exclude null , string $insertBefore ' ' , string $insertAfter null )
Возвращает строку, разделённую пробелами, с элементами массива $options. Если ключ массива $options соответствует одному из перечисленных в Helper::$_minimizedAttributes,
и его значение равно:
- '1' (строка)
- 1 (целое число)
- true (булево)
- 'true' (строка)
то значение будет перезаписано, чтобы совпадать с именем ключа. Если значение не соответствует одному из этих трёх, параметр не выводится.
'escape' — это специальный параметр, контролирующий преобразование атрибутов в их эквиваленты, закодированные с использованием html-сущностей. Установите в значение false, чтобы отключить кодирование html.
Если значение для любого ключа параметра установлено в null или false, этот параметр будет исключён из вывода.
Параметры
- массив
$options - Массив параметров.
- массив
$excludeнеобязательно null - Массив параметров, которые нужно исключить. Параметры из этого массива не будут частью результата.
- строка
$insertBeforeнеобязательно ' ' - Строка, которая будет вставлена перед параметрами.
- строка
$insertAfterнеобязательно null - Строка, которая будет вставлена после параметров.
Возвращает
stringСоставленные атрибуты.
_selectedArraysource protected
_selectedArray( string|array $data , string $key 'id' )
Преобразует набор записей из ассоциации hasAndBelongsToMany в список выбранных параметров для элемента множественного выбора.
Параметры
- строка|массив
$data - Массив данных или имя модели.
- строка
$keyнеобязательно 'id' - Имя поля.
Возвращает
arrayмассив
addClasssource public
addClass( array $options array() , string $class null , string $key 'class' )
Добавляет указанный класс к параметрам элемента.
Параметры
- массив
$optionsнеобязательно array() - Массив параметров/атрибутов, к которым необходимо добавить класс.
- строка
$classнеобязательно null - Имя добавляемого класса.
- строка
$keyнеобязательно 'class' - Ключ, используемый для класса.
Возвращает
arrayМассив параметров с установленным $key.
afterRendersource public
afterRender( string $viewFile )
Обратный вызов после отрисовки. afterRender вызывается после отрисовки файла представления, но перед отрисовкой макета.
Переопределяется в подклассах.
Параметры
- строка
$viewFile - Файл представления, который был отрисован.
assetTimestampsource public
assetTimestamp( string $path )
Добавляет отметку времени к ресурсу файла на основе значения Asset.timestamp в Configure. Если Asset.timestamp имеет значение true и debug > 0, или Asset.timestamp === 'force', отметка времени будет добавлена.
Параметры
- строка
$path - Путь к файлу, к которому нужно добавить отметку времени, путь должен находиться внутри WWW_ROOT
Возвращает
stringПуть с добавленной отметкой времени или без неё.
assetUrlsource public
assetUrl( string|array $path , array $options array() )
Генерирует URL для указанного файла ресурса. В зависимости от переданных параметров возвращает полный URL с доменным именем. Также вызывает Helper::assetTimestamp() для добавления отметки времени к локальным файлам
Параметры
- строка|массив
$path - Строка пути или массив URL
- массив
$optionsнеобязательно array() - Массив параметров. Возможные ключи:
fullBaseВозвратить полный URL с доменным именемpathPrefixПрефикс пути для относительных URLextРасширение ресурса для добавленияpluginЛожное значение предотвратит разбор пути как плагина
Возвращает
stringСгенерированный URL
beforeLayoutsource public
beforeLayout( string $layoutFile )
Обратный вызов перед макетом. beforeLayout вызывается перед отрисовкой макета.
Переопределяется в подклассах.
Параметры
- строка
$layoutFile - Макет, который собирается отрисоваться.
beforeRendersource public
beforeRender( string $viewFile )
Обратный вызов перед отрисовкой. beforeRender вызывается перед отрисовкой файла представления.
Переопределяется в подклассах.
Параметры
- строка
$viewFile - Файл представления, который будет отрисован
beforeRenderFilesource public
beforeRenderFile( string $viewFile )
Обратный вызов перед отрисовкой файла. Вызывается перед отрисовкой любого фрагмента представления.
Переопределяется в подклассах.
Параметры
- строка
$viewFile - Файл, который собирается отрисоваться.
cleansource public
clean( string|array $output )
Используется для удаления вредных тегов из содержимого. Удаляет ряд известных атак XSS из содержимого. Однако, не гарантирует удаление всех возможных вариантов. Использование экранирования содержимого — лучший способ предотвращения всех возможных атак.
Параметры
- строка|массив
$output - Массив строк для очистки или одна строка для очистки.
Возвращаемое значение
string|array|nullОчищенное содержимое для вывода
domIdsource public
domId( array|string $options null , string $id 'id' )
Генерирует идентификатор DOM для выбранного элемента, если он не задан. Использует текущие настройки View::entity() для генерации идентификатора атрибута в формате CamelCase.
Параметры
- массив|строка
$optionsнеобязательно null - Массив HTML-атрибутов, в который добавить $id, или строка с путем к сущности представления для получения domId.
- строка
$idнеобязательно 'id' - Имя атрибута 'id'.
Возвращаемое значение
mixedЕсли $options был массивом, будет возвращён массив с установленным $id. Если была передана строка, будет возвращена строка.
entitysource public
entity( )
Возвращает ссылку на сущность текущего контекста в виде массива идентификаторов.
Возвращаемое значение
arrayМассив, содержащий идентификационные элементы сущности
fieldsource public
field( )
Получает текущее используемое поле модели контекста рендеринга. Удаляет постфиксы полей, такие как год, месяц, день, час, минута, период, когда текущая сущность содержит более 2 элементов.
Возвращаемое значение
stringстрока
modelsource public
model( )
Получает текущую используемую модель контекста рендеринга.
Возвращаемое значение
stringстрока
outputsource public
output( string $str )
Возвращает строку, сгенерированную методом помощника.
Этот метод можно переопределить в подклассах для обобщённой обработки вывода после обработки.
Параметры
- строка
$str - Строка для вывода.
Возвращаемое значение
stringстрока
setEntitysource public
setEntity( string $entity , boolean $setScope false )
Устанавливает свойства модели и поля помощника в соответствии со значением, разделенным точкой в $entity.
Параметры
- строка
$entity - Имя поля, например, "ИмяМодели.ИмяПоля" или "ИмяМодели.ID.ИмяПоля"
- логическое значение
$setScopeнеобязательно false - Устанавливает область видимости представления в модель, указанную в $tagValue
urlsource public
url( string|array $url null , boolean $full false )
Находит URL для указанного действия.
Возвращает URL, указывающий на предоставленные параметры.
Параметры
- строка|массив
$urlнеобязательно null - Относительный URL-адрес, например,
/products/view/23, или массив параметров URL. Использование массива для URL позволит использовать функции обратного маршрутизирования CakePHP. - логическое значение
$fullнеобязательно false - Если true, к результату будет добавлен полный базовый URL
Возвращаемое значение
stringПолный переведённый URL с базовым путём.
Ссылка
http://book.cakephp.org/2.0/ru/views/helpers.htmlvaluesource public
value( array|string $options array() , string $field null , string $key 'value' )
Получает данные для текущего тега.
Параметры
- массив|строка
$optionsнеобязательно array() - Если массив, должен быть массивом атрибутов, к которым нужно добавить $key. Если строка или null, будет использоваться как сущность представления.
- строка
$fieldнеобязательно null - Имя поля.
- строка
$keyнеобязательно 'value' - Имя атрибута, который нужно установить, по умолчанию 'value'.
Возвращаемое значение
mixedЕсли для $options был передан массив, будет возвращён массив с установленным $key. Если была передана строка, будет возвращена строка.
webrootsource public
webroot( string $file )
Проверяет существование файла при использовании темы, если файл не найден, возвращается расположение по умолчанию.
Параметры
- строка
$file - Файл, для которого нужно создать путь в webroot.
Возвращаемое значение
stringВеб-доступный путь к файлу.
Методы, унаследованные от Объект
_mergeVarssource protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойство $property этого объекта со свойством в определении $class. Значение этого класса для свойства будет объединено поверх значения $class.
Это обеспечивает некоторую магию DRY, предоставляемую CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Имя свойств для объединения.
- строка
$class - Класс для объединения свойства с ним.
- логическое значение
$normalizeнеобязательно true - Установить в значение true, чтобы выполнить свойства через Hash::normalize() перед объединением.
_setsource protected
_set( array $properties array() )
Позволяет установить несколько свойств объекта в одной строке кода. Будет установлено только свойства, которые являются частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stopsource protected
_stop( integer|string $status 0 )
Остановить выполнение текущего скрипта. Оборачивает exit(), что упрощает тестирование.
Параметры
- целое число|строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethodsource public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Предоставляет объектно-ориентированную оболочку для call_user_func_array
Параметры
- строка
$method - Имя вызываемого метода.
- массив
$paramsнеобязательно array() - Список параметров для использования при вызове $method.
Возвращаемое значение
mixedВозвращает результат вызова метода
logsource public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. См. CakeLog::write() для получения дополнительной информации о записи в логи.
Параметры
- строка
$msg - Сообщение для записи в лог
- целое число
$typeнеобязательно LOG_ERR - Константа типа ошибки. Определена в app/Config/core.php.
- null|строка|массив
$scopeнеобязательно null - Область(и), в которой создаётся сообщение для записи в лог. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.
Возвращаемое значение
booleanУспех записи в лог
requestActionsource public
requestAction( string|array $url , array $extra array() )
Вызывает метод контроллера из любой точки приложения. Может использоваться для связи контроллеров или подключения плагинов к основному приложению. requestAction может возвращать отрисованные представления или значение, возвращаемое действием контроллера.
Внутри метод использует Router::reverse() для преобразования параметра $url в строковый URL. Вы должны использовать форматы URL, совместимые с Router::reverse().
Передача данных POST и GET
Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет смоделировать данные POST.
Параметры
- строка|массив
$url - Строковый или массивно-основанный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- массив
$extraнеобязательно array() - Если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST, а также именованных и переданных аргументов.
Возвращаемое значение
mixedБулево значение true или false в случае успеха/неудачи, или содержимое отрисованного действия, если в $extra задан ключ 'return'.
toStringsource public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по мере необходимости.
Возвращаемое значение
stringИмя этого класса
Краткое описание свойств
Свойства, унаследованные от Helper
$_associationsource
protected строка
Имя текущей модели ассоциации, сущности которой находятся в области видимости.
См.
Helper::setEntity()$_entityPathsource
protected строка
Список элементов, разделенных точкой, для которых предназначена текущая сущность поля.
См.
Helper::setEntity()$_fieldSuffixessource
protected массив
Список строк, которые должны обрабатываться как суффиксы или подвходные элементы для родительского элемента. Это используется в основном для полей даты/времени.
array( 'year', 'month', 'day', 'hour', 'min', 'second', 'meridian' )
$_helperMapsource
protected массив
Таблица поиска хелперов, используемая для ленивой загрузки объектов хелперов.
array() $_minimizedAttributessource
protected массив
Минимизированные атрибуты
array( 'allowfullscreen', 'async', 'autofocus', 'autoplay', 'checked', 'compact', 'controls', 'declare', 'default', 'defaultchecked', 'defaultmuted', 'defaultselected', 'defer', 'disabled', 'enabled', 'formnovalidate', 'hidden', 'indeterminate', 'inert', 'ismap', 'itemscope', 'loop', 'multiple', 'muted', 'nohref', 'noresize', 'noshade', 'novalidate', 'nowrap', 'open', 'pauseonexit', 'readonly', 'required', 'reversed', 'scoped', 'seamless', 'selected', 'sortable', 'spellcheck', 'truespeed', 'typemustmatch', 'visible' )
$_modelScopesource
protected строка
Имя текущей модели, сущности которой находятся в области видимости.
См.
Helper::setEntity()$fieldsetsource
public массив
Содержит массив полей ('имя_поля' => массив('тип' => 'строка', 'длина' => 100), primaryKey и валидации массив('имя_поля')
array()
© 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/2.7/class-CacheHelper.html