Spec-Zone.ru › Yii 1.1

COutputProcessor

Пакет system.web.widgets
Наследование class COutputProcessor » CFilterWidget » CWidget » CBaseController » CComponent
Реализует IFilter
Подклассы CContentDecorator, CHtmlPurifier, CMarkdown, CTextHighlighter
С версии 1.0
Исходный код framework/web/widgets/COutputProcessor.php
COutputProcessor преобразует содержимое в другой формат.

COutputProcessor захватывает вывод, генерируемый действием или фрагментом представления, и передает его обработчикам событий onProcessOutput для дальнейшей обработки.

Обработчик событий может обработать вывод и сохранить его обратно в свойство COutputEvent::output. Установив свойство handled параметра события в true, вывод больше не будет выводиться. В противном случае (по умолчанию) вывод будет выведен.

Свойства общего доступа

Свойство Тип Описание Определено в
actionPrefix строка префикс к идентификаторам действий. CWidget
controller CController Возвращает контроллер, к которому принадлежит этот виджет. CWidget
id строка Возвращает ID виджета или генерирует новый, если запрошено. CWidget
isFilter логическое значение указывает, используется ли этот виджет в качестве фильтра. CFilterWidget
owner CBaseController Возвращает владельца/создателя этого виджета. CWidget
skin смешанный тип имя используемой темы для этого виджета. CWidget
stopAction логическое значение определяет, останавливать ли выполнение действия, когда этот виджет используется как фильтр. CFilterWidget
viewPath строка Возвращает директорию, содержащую файлы представления для этого виджета. CWidget

Публичные методы

Метод Описание Определено в
__call() Вызывает метод с указанным именем, который не является методом класса. CComponent
__construct() Конструктор. CFilterWidget
__get() Возвращает значение свойства, список обработчиков событий или поведение по имени. CComponent
__isset() Проверяет, является ли значение свойства нулевым. CComponent
__set() Устанавливает значение свойства компонента. CComponent
__unset() Устанавливает свойство компонента в значение null. CComponent
actions() Возвращает список действий, используемых этим виджетом. CWidget
asa() Возвращает объект поведения с указанным именем. CComponent
attachBehavior() Присоединяет поведение к компоненту. CComponent
attachBehaviors() Присоединяет список поведений к компоненту. CComponent
attachEventHandler() Присоединяет обработчик событий к событию. CComponent
beginCache() Начинает кэширование фрагментов. CBaseController
beginClip() Начинает запись клипа. CBaseController
beginContent() Начинает отображение содержимого, которое должно быть обработано указанным представлением. CBaseController
beginWidget() Создаёт виджет и выполняет его. CBaseController
canGetProperty() Определяет, можно ли считать свойство. CComponent
canSetProperty() Определяет, можно ли установить свойство. CComponent
createWidget() Создаёт виджет и инициализирует его. CBaseController
detachBehavior() Отсоединяет поведение от компонента. CComponent
detachBehaviors() Отсоединяет все поведения от компонента. CComponent
detachEventHandler() Отсоединяет существующий обработчик событий. CComponent
disableBehavior() Отключает присоединённое поведение. CComponent
disableBehaviors() Отключает все присоединённые поведения к данному компоненту. CComponent
enableBehavior() Включает присоединённое поведение. CComponent
enableBehaviors() Включает все присоединённые поведения к этому компоненту. CComponent
endCache() Заканчивает кэширование фрагментов. CBaseController
endClip() Заканчивает запись клипа. CBaseController
endContent() Заканчивает отображение содержимого. CBaseController
endWidget() Заканчивает выполнение указанного виджета. CBaseController
evaluateExpression() Вычисляет выражение PHP или обратный вызов в контексте данного компонента. CComponent
filter() Выполняет фильтрацию. CFilterWidget
getController() Возвращает контроллер, к которому принадлежит этот виджет. CWidget
getEventHandlers() Возвращает список присоединённых обработчиков событий для события. CComponent
getId() Возвращает идентификатор виджета или генерирует новый, если это требуется. CWidget
getIsFilter() Проверяет, используется ли этот виджет в качестве фильтра. CFilterWidget
getOwner() Возвращает владельца/создателя этого виджета. CWidget
getViewFile() Ищет файл сценария представления в соответствии с именем представления. CWidget
getViewPath() Возвращает директорию, содержащую файлы представлений для этого виджета. CWidget
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, имеет ли указанное событие прикреплённые обработчики. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
init() Инициализирует виджет. COutputProcessor
onProcessOutput() Вызывается, когда вывод был получен. COutputProcessor
processOutput() Обрабатывает полученный вывод. COutputProcessor
raiseEvent() Вызывает событие. CComponent
render() Отображает представление. CWidget
renderFile() Отображает файл представления. CBaseController
renderInternal() Отображает файл представления. CBaseController
run() Выполняет виджет. COutputProcessor
setId() Устанавливает идентификатор виджета. CWidget
widget() Создаёт виджет и выполняет его. CBaseController

События

Событие Описание Определено в
onProcessOutput Вызывается, когда вывод был получен. COutputProcessor

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

init() метод

public void init()
Исходный код: framework/web/widgets/COutputProcessor.php#31 (показать)
public function init()
{
    
ob_start();
    
ob_implicit_flush(false);
}

Инициализирует виджет. Этот метод запускает буферизацию вывода.

onProcessOutput() метод

public void onProcessOutput(COutputEvent $event)
$event COutputEvent параметр события
Исходный код: framework/web/widgets/COutputProcessor.php#72 (показать)
public function onProcessOutput($event)
{
    
$this->raiseEvent('onProcessOutput',$event);
}

Вызывается при получении результата вывода.

processOutput() метод

public void processOutput(string $output)
$output строка захваченный вывод для обработки
Исходный код: framework/web/widgets/COutputProcessor.php#55 (показать)
public function processOutput($output)
{
    if(
$this->hasEventHandler('onProcessOutput'))
    {
        
$event=new COutputEvent($this,$output);
        
$this->onProcessOutput($event);
        if(!
$event->handled)
            echo 
$output;
    }
    else
        echo 
$output;
}

Обрабатывает полученный вывод.

По умолчанию генерируется событие onProcessOutput. Если событие не обработано никаким обработчиком, вывод будет выведен.

run() метод

public void run()
Исходный код: framework/web/widgets/COutputProcessor.php#41 (показать)
public function run()
{
    
$output=ob_get_clean();
    
$this->processOutput($output);
}

Выполняет виджет. Этот метод останавливает буферизацию вывода и обрабатывает полученный вывод.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/COutputProcessor

Spec-Zone.ru

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