YAF_VIEW_INTERFACE(3) 1 YAF_VIEW_INTERFACE(3)The Yaf_View_Interface classINTRODUCTION
Yaf provides a ability for developers to use coustom view engine instead of build-in engine which is Yaf_View_Simple. There is a example
to explain how to do this, please see Yaf_Dispatcher::setView.
CLASS SYNOPSIS
Yaf_View_Interface
Yaf_View_Interface
Methods
o abstractpublic bool Yaf_View_Interface::assign (string $name, [string $value])
o abstractpublic bool Yaf_View_Interface::display (string $tpl, [array $tpl_vars])
o abstractpublic void Yaf_View_Interface::getScriptPath (void )
o abstractpublic string Yaf_View_Interface::render (string $tpl, [array $tpl_vars])
o abstractpublic void Yaf_View_Interface::setScriptPath (string $template_dir)
PHP Documentation Group YAF_VIEW_INTERFACE(3)
Check Out this Related Man Page
YAF_CONTROLLER_ABSTRACT(3) 1 YAF_CONTROLLER_ABSTRACT(3)The Yaf_Controller_Abstract classINTRODUCTION
Yaf_Controller_Abstract is the heart of Yaf's system. MVC stands for Model-View-Controller and is a design pattern targeted at separating
application logic from display logic.
Every custom controller shall inherit Yaf_Controller_Abstract.
You will find that you can not define __construct function for your custom controller, thus, Yaf_Controller_Abstract provides a magic
method: Yaf_Controller_Abstract::init.
If you have defined a init() method in your custom controller, it will be called as long as the controller was instantiated.
Action may have arguments, when a request coming, if there are the same name variable in the request parameters(see
Yaf_Request_Abstract::getParam) after routed, Yaf will pass them to the action method (see Yaf_Action_Abstract::execute).
Note
These arguments are directly fetched without filtering, it should be carefully processed before use them.
CLASS SYNOPSIS
Yaf_Controller_Abstract
abstract
Yaf_Controller_Abstract
Properties
o public$actions
o protected$_module
o protected$_name
o protected$_request
o protected$_response
o protected$_invoke_args
o protected$_view
Methods
o finalprivate void Yaf_Controller_Abstract::__clone (void )
o finalprivate Yaf_Controller_Abstract::__construct (void )
o protected bool Yaf_Controller_Abstract::display (string $tpl, [array $parameters])
o public void Yaf_Controller_Abstract::forward (string $action, [array $paramters])
o public void Yaf_Controller_Abstract::getInvokeArg (string $name)
o public void Yaf_Controller_Abstract::getInvokeArgs (void )
o public string Yaf_Controller_Abstract::getModuleName (void )
o public Yaf_Request_Abstract Yaf_Controller_Abstract::getRequest (void )
o public Yaf_Response_Abstract Yaf_Controller_Abstract::getResponse (void )
o public Yaf_View_Interface Yaf_Controller_Abstract::getView (void )
o public void Yaf_Controller_Abstract::getViewpath (void )
o public void Yaf_Controller_Abstract::init (void )
o public void Yaf_Controller_Abstract::initView ([array $options])
o public bool Yaf_Controller_Abstract::redirect (string $url)
o protected string Yaf_Controller_Abstract::render (string $tpl, [array $parameters])
o public void Yaf_Controller_Abstract::setViewpath (string $view_directory)
PROPERTIES
o $actions
- You can also define a action method in a separate PHP script by using this property and Yaf_Action_Abstract.
Example #1
define action in a separate file
<?php
class IndexController extends Yaf_Controller_Abstract {
protected $actions = array(
/** now dummyAction is defined in a separate file */
"dummy" => "actions/Dummy_action.php",
);
/* action method may have arguments */
public indexAction($name, $id) {
/* $name and $id are unsafe raw data */
assert($name == $this->getRequest()->getParam("name"));
assert($id == $this->_request->getParam("id"));
}
}
?>
Example #2
Dummy_action.php
<?php
class DummyAction extends Yaf_Action_Abstract {
/* a action class shall define this method as the entry point */
public execute() {
}
}
?>
o $_module
- module name
o $_name
- controller name
o $_request
- current request object
o $_response
- current response object
o $_invoke_args
-
o $_view
- view engine object
PHP Documentation Group YAF_CONTROLLER_ABSTRACT(3)