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

Yaf_Dispatcher::setView

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

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

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

yaf-dispatcher.setview.php

Yaf_Dispatcher::setView

(Yaf >=1.0.0)

Yaf_Dispatcher::setViewПоставете прилагоден мотор за прикажување

= NULL

public Yaf_Dispatcher::setView(Yaf_View_Interface $view): Yaf_Dispatcher

Овој метод обезбедува решение ако сакате да користите прилагоден мотор за прикажување наместо Yaf_View_Simple

Параметри

view

А Yaf_View_Interface instance

Вратени вредности

Примери

Пример #1 Пример за прилагоден мотор за прикажување

<?php
require "/path/to/smarty/Smarty.class.php";

class
Smarty_Adapter implements Yaf_View_Interface
{
/**
* Smarty object
* @var Smarty
*/
public $_smarty;

/**
* Constructor
*
* @param string $tmplPath
* @param array $extraParams
* @return void
*/
public function __construct($tmplPath = null, $extraParams = array()) {
$this->_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 Yaf_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);
}

}
?>

Пример #2 Yaf_Dispatcher::setView() example

<?php
class Bootstrap extends Yaf_Bootstrap_Abstract {

/**
* there are some config for smarty in the config:
*
* smarty.left_delimiter = "{{"
* smarty.right_delimiter = "}}"
* smarty.template_dir = APPLICATION_PATH "/views/scripts/"
* smarty.compile_dir = APPLICATION_PATH "/views/templates_c/"
* smarty.cache_dir = APPLICATION_PATH "/views/templates_d/"
*
*/
public function _initConfig() {
$config = Yaf_Application::app()->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 */
}
}
?>

Види Исто така

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

Нема белешки од корисници за оваа страница.
На оваа страница

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

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

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

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

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