PHP.mk документација

Yaf_Plugin_Abstract

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

class.yaf-plugin-abstract.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека class.yaf-plugin-abstract.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
Yaf_Plugin_Abstract

Референца за `class.yaf-plugin-abstract.php` со подобрена типографија и навигација.

class.yaf-plugin-abstract.php

Класата Yaf_Plugin_Abstract

(Yaf >=1.0.0)

Вовед

Приклучоците овозможуваат лесно проширување и прилагодување на рамката.

Приклучоците се класи. Дефиницијата на самата класа ќе варира во зависност од компонентата -- можеби ќе треба да го имплементирате овој интерфејс, но фактот останува дека приклучокот е самата класа.

Приклучок може да се вчита во Yaf со користење на Yaf_Dispatcher::registerPlugin(), по регистрацијата, сите методи што приклучокот ги имплементирал според овој интерфејс, ќе бидат повикани во соодветно време.

Примери

Пример #1 Пример за приклучок

<?php
/* bootstrap class should be defined under ./application/Bootstrap.php */
class Bootstrap extends Yaf_Bootstrap_Abstract {
public function
_initPlugin(Yaf_Dispatcher $dispatcher) {
/* register a plugin */
$dispatcher->registerPlugin(new TestPlugin());
}
}

/* plugin class should be placed under ./application/plugins/ */
class TestPlugin extends Yaf_Plugin_Abstract {
public function
routerStartup(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
/* before router
in this hook, user can do some url rewrite */
var_dump("routerStartup");
}
public function
routerShutdown(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
/* router complete
in this hook, user can do login check */
var_dump("routerShutdown");
}
public function
dispatchLoopStartup(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
var_dump("dispatchLoopStartup");
}
public function
preDispatch(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
var_dump("preDispatch");
}
public function
postDispatch(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
var_dump("postDispatch");
}
public function
dispatchLoopShutdown(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
/* final hook
in this hook user can do logging or implement layout */
var_dump("dispatchLoopShutdown");
}
}

Class
IndexController extends Yaf_Controller_Abstract {
public function
indexAction() {
return
FALSE; //prevent rendering
}
}

$config = array(
"application" => array(
"directory" => dirname(__FILE__) . "/application/",
),
);

$app = new Yaf_Application($config);
$app->bootstrap()->run();
?>

Горниот пример ќе прикаже нешто слично на:

string(13) "routerStartup"
string(14) "routerShutdown"
string(19) "dispatchLoopStartup"
string(11) "preDispatch"
string(12) "postDispatch"
string(20) "dispatchLoopShutdown"

Синопсис на класата

class Yaf_Plugin_Abstract {
/* Методи */
}

Содржина

Белешки од корисници 1 белешка

gianjason#gmail.com
пред 13 години
All the methods which the plugin implemented according to this interface, will be called at the proper time automatically.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.