⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 registry.php

📁 zend的加强包 zend的加强包
💻 PHP
字号:
<?php/** * Zend Framework * * LICENSE * * This source file is subject to version 1.0 of the Zend Framework * license, that is bundled with this package in the file LICENSE.txt, and * is available through the world-wide-web at the following URL: * http://framework.zend.com/license/new-bsd. If you did not receive * a copy of the Zend Framework license and are unable to obtain it * through the world-wide-web, please send a note to license@zend.com * so we can mail you a copy immediately. * * @package    Zend_View * @subpackage Helper * @copyright  Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com) * @version    $Id: Registry.php 8920 2008-03-19 22:17:25Z thomas $ * @license    http://framework.zend.com/license/new-bsd     New BSD License *//** Zend_Registry */require_once 'Zend/Registry.php';/** Zend_View_Helper_Placeholder_Container_Abstract */require_once 'Zend/View/Helper/Placeholder/Container/Abstract.php';/** Zend_View_Helper_Placeholder_Container */require_once 'Zend/View/Helper/Placeholder/Container.php';/** * Registry for placeholder containers * * @package    Zend_View * @subpackage Helper * @copyright  Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com) * @license    http://framework.zend.com/license/new-bsd     New BSD License */ class Zend_View_Helper_Placeholder_Registry{    /**     * Zend_Registry key under which placeholder registry exists     * @const string     */    const REGISTRY_KEY = 'Zend_View_Helper_Placeholder_Registry';    /**     * Default container class     * @var string     */    protected $_containerClass = 'Zend_View_Helper_Placeholder_Container';    /**     * Placeholder containers     * @var array     */    protected $_items = array();    /**     * Retrieve or create registry instnace     *      * @return void     */    public static function getRegistry()    {        if (Zend_Registry::isRegistered(self::REGISTRY_KEY)) {            $registry = Zend_Registry::get(self::REGISTRY_KEY);        } else {            $registry = new self();            Zend_Registry::set(self::REGISTRY_KEY, $registry);        }        return $registry;    }    /**     * createContainer      *      * @param  string $key      * @param  array $value      * @return Zend_View_Helper_Placeholder_Container_Abstract     */    public function createContainer($key, array $value = array())    {        $key = (string) $key;        $this->_items[$key] = new $this->_containerClass(array());        return $this->_items[$key];    }    /**     * Retrieve a placeholder container     *      * @param  string $key      * @return Zend_View_Helper_Placeholder_Container_Abstract     */    public function getContainer($key)    {        $key = (string) $key;        if (isset($this->_items[$key])) {            return $this->_items[$key];        }        $container = $this->createContainer($key);        return $container;    }    /**     * Does a particular container exist?     *      * @param  string $key      * @return bool     */    public function containerExists($key)    {        $key = (string) $key;        $return =  array_key_exists($key, $this->_items);        return $return;    }    /**     * Set the container for an item in the registry     *      * @param  string $key      * @param  Zend_View_Placeholder_Container_Abstract $container      * @return Zend_View_Placeholder_Registry     */    public function setContainer($key, Zend_View_Helper_Placeholder_Container_Abstract $container)    {        $key = (string) $key;        $this->_items[$key] = $container;        return $this;    }    /**     * Delete a container     *      * @param  string $key      * @return bool     */    public function deleteContainer($key)    {        $key = (string) $key;        if (isset($this->_items[$key])) {            unset($this->_items[$key]);            return true;        }        return false;    }    /**     * Set the container class to use     *      * @param  string $name      * @return Zend_View_Helper_Placeholder_Registry     */    public function setContainerClass($name)    {        require_once 'Zend/Loader.php';        Zend_Loader::loadClass($name);        $reflection = new ReflectionClass($name);        if (!$reflection->isSubclassOf(new ReflectionClass('Zend_View_Helper_Placeholder_Container_Abstract'))) {            require_once 'Zend/View/Helper/Placeholder/Registry/Exception.php';            throw new Zend_View_Helper_Placeholder_Registry_Exception('Invalid Container class specified');        }        $this->_containerClass = $name;        return $this;    }    /**     * Retrieve the container class     *      * @return string     */    public function getContainerClass()    {        return $this->_containerClass;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -