From 709d67bee1680168e4bab4ca7aa563726a697b2f Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Sat, 26 Nov 2011 11:11:27 +0000 Subject: [PATCH] update docs git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@319949 c90b9560-bf6c-de11-be94-00142212c4b1 --- reference/yaf/ini.xml | 38 ++++- reference/yaf/yaf-plugin-abstract.xml | 2 +- reference/yaf/yaf-registry.xml | 4 +- reference/yaf/yaf_dispatcher/setview.xml | 192 ++++++++++++++++++++++- 4 files changed, 226 insertions(+), 10 deletions(-) diff --git a/reference/yaf/ini.xml b/reference/yaf/ini.xml index e4dac5c5ac..a7acf420cc 100644 --- a/reference/yaf/ini.xml +++ b/reference/yaf/ini.xml @@ -137,7 +137,14 @@ - + When this value is On, if Yaf_Loader can not + find a class, it will return FALSE, then give chance to other auto + load function to be called. + + + + When this value is Off(default), + Yaf_Loader::autoload will always return TRUE. @@ -148,7 +155,12 @@ - + The max forward count, default is 5. that means you can have a max + value of 5 in the forward stack. + + + This is a protection for prevent recursive + Yaf_Controller_Abstract::forward. @@ -190,7 +202,10 @@ - + If this is On, and in the meantime you are using ini config file as the + parameter of Yaf_Application, then the + compiling result of the ini config file will be cached in the PHP + process. @@ -212,7 +227,14 @@ - + This value is "dev" by default, used for Yaf to fetch the config + section of a ini config file. + + + That is, if this value is "dev", Yaf will use the section named "dev" + in the ini config file(the first parameter of the + Yaf_Application) as the final config of the + Yaf_Application. @@ -224,7 +246,13 @@ - Only works as of PHP 5.3 + Only works as of PHP 5.3, if this value is On, All class of Yaf will + named in namespace style. + + + For example, Yaf_Route_Rewrite => \Yaf\Route\Rewrite, + Yaf_Controller_Abstract => \Yaf\Controller_Abstract (Abstract is the + keyword, can not used as a class name) diff --git a/reference/yaf/yaf-plugin-abstract.xml b/reference/yaf/yaf-plugin-abstract.xml index 3f1d1c99ed..694b157806 100644 --- a/reference/yaf/yaf-plugin-abstract.xml +++ b/reference/yaf/yaf-plugin-abstract.xml @@ -4,7 +4,7 @@ The Yaf_Plugin_Abstract class - Yaf_Plugin_Abstract + Plugin for Yaf diff --git a/reference/yaf/yaf-registry.xml b/reference/yaf/yaf-registry.xml index 1016eea4d1..7111d4e8a3 100644 --- a/reference/yaf/yaf-registry.xml +++ b/reference/yaf/yaf-registry.xml @@ -12,7 +12,9 @@
&reftitle.intro; - + All methods of Yaf_Registry declared as static, making it + unversally accessible. This provides the ability to get or set any custom + data from anyway in your code as necessary.
diff --git a/reference/yaf/yaf_dispatcher/setview.xml b/reference/yaf/yaf_dispatcher/setview.xml index 0a1c7c4dbc..20e37cdc1a 100644 --- a/reference/yaf/yaf_dispatcher/setview.xml +++ b/reference/yaf/yaf_dispatcher/setview.xml @@ -4,7 +4,7 @@ Yaf_Dispatcher::setView - The setView purpose + Set a custom view engine @@ -14,7 +14,8 @@ Yaf_View_Interfaceview - + This method proviods a solution for that if you want use a custom view + engine instead of Yaf_View_Simple &warn.undocumented.func; @@ -28,7 +29,7 @@ view - + A Yaf_View_Interface instance @@ -42,7 +43,192 @@ + + &reftitle.examples; + + <function>A custom View engine</function>example + +_smarty = new Smarty; + + if (null !== $tmplPath) { + $this->setScriptPath($tmplPath); + } + + foreach ($extraParams as $key => $value) { + $this->_smarty->$key = $value; + } + } + + /** + * Set the path to the templates + * + * @param string $path The directory to set as the path. + * @return void + */ + public function setScriptPath($path) + { + if (is_readable($path)) { + $this->_smarty->template_dir = $path; + return; + } + + throw new Exception('Invalid path provided'); + } + + /** + * Assign a variable to the template + * + * @param string $key The variable name. + * @param mixed $val The variable value. + * @return void + */ + public function __set($key, $val) + { + $this->_smarty->assign($key, $val); + } + + /** + * Allows testing with empty() and isset() to work + * + * @param string $key + * @return boolean + */ + public function __isset($key) + { + return (null !== $this->_smarty->get_template_vars($key)); + } + + /** + * Allows unset() on object properties to work + * + * @param string $key + * @return void + */ + public function __unset($key) + { + $this->_smarty->clear_assign($key); + } + + /** + * Assign variables to the template + * + * Allows setting a specific key to the specified value, OR passing + * an array of key => value pairs to set en masse. + * + * @see __set() + * @param string|array $spec The assignment strategy to use (key or + * array of key => value pairs) + * @param mixed $value (Optional) If assigning a named variable, + * use this as the value. + * @return void + */ + public function assign($spec, $value = null) { + if (is_array($spec)) { + $this->_smarty->assign($spec); + return; + } + + $this->_smarty->assign($spec, $value); + } + + /** + * Clear all assigned variables + * + * Clears all variables assigned to Zend_View either via + * {@link assign()} or property overloading + * ({@link __get()}/{@link __set()}). + * + * @return void + */ + public function clearVars() { + $this->_smarty->clear_all_assign(); + } + + /** + * Processes a template and returns the output. + * + * @param string $name The template to process. + * @return string The output. + */ + public function render($name, $value = NULL) { + return $this->_smarty->fetch($name); + } + + public function display($name, $value = NULL) { + echo $this->_smarty->fetch($name); + } + +} +?> +]]> + + + + <function>Yaf_Dispatcher::setView</function>example + +getConfig(); + Yaf_Registry::set("config", $config); + } + + public function _initLocalName() { + /** we put class Smarty_Adapter under the local library directory */ + Yaf_Loader::getInstance()->registerLocalNamespace('Smarty'); + } + + public function _initSmarty(Yaf_Dispatcher $dispatcher) { + $smarty = new Smarty_Adapter(null, Yaf_Registry::get("config")->get("smarty")); + $dispatcher->setView($smarty); + /* now the Smarty view engine become the default view engine of Yaf */ + } +} +?> +]]> + + + + + + &reftitle.seealso; + + Yaf_View_Interface + Yaf_View_Simple + +