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

📄 abstract.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. * * @category   Zend * @package    Zend_Controller * @subpackage Zend_Controller_Action_Helper * @copyright  Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com) * @version    $Id: Abstract.php 8972 2008-03-21 18:48:44Z thomas $ * @license    http://framework.zend.com/license/new-bsd     New BSD License *//** * @see Zend_Controller_Action_Helper_Abstract */require_once 'Zend/Controller/Action/Helper/Abstract.php';/** * Create and send autocompletion lists * * @uses       Zend_Controller_Action_Helper_Abstract * @category   Zend * @package    Zend_Controller * @subpackage Zend_Controller_Action_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 */abstract class Zend_Controller_Action_Helper_AutoComplete_Abstract extends Zend_Controller_Action_Helper_Abstract{    /**     * Suppress exit when sendJson() called     *     * @var boolean     */    public $suppressExit = false;    /**     * Validate autocompletion data     *      * @param  mixed $data     * @return boolean     */    abstract public function validateData($data);    /**     * Prepare autocompletion data     *      * @param  mixed   $data      * @param  boolean $keepLayouts      * @return mixed     */    abstract public function prepareAutoCompletion($data, $keepLayouts = false);    /**     * Disable layouts and view renderer     *      * @return Zend_Controller_Action_Helper_AutoComplete_Abstract Provides a fluent interface     */    public function disableLayouts()    {        /**         * @see Zend_Layout         */        require_once 'Zend/Layout.php';        if (null !== ($layout = Zend_Layout::getMvcInstance())) {            $layout->disableLayout();        }        Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer')->setNoRender(true);        return $this;    }    /**     * Encode data to JSON     *      * @param  mixed $data      * @param  bool  $keepLayouts      * @throws Zend_Controller_Action_Exception     * @return string     */    public function encodeJson($data, $keepLayouts = false)    {        if ($this->validateData($data)) {            return Zend_Controller_Action_HelperBroker::getStaticHelper('Json')->encodeJson($data, $keepLayouts);        }        /**         * @see Zend_Controller_Action_Exception         */        require_once 'Zend/Controller/Action/Exception.php';        throw new Zend_Controller_Action_Exception('Invalid data passed for autocompletion');    }    /**     * Send autocompletion data     *     * Calls prepareAutoCompletion, populates response body with this      * information, and sends response.     *      * @param  mixed $data      * @param  bool  $keepLayouts      * @return string|void     */    public function sendAutoCompletion($data, $keepLayouts = false)    {        $data = $this->prepareAutoCompletion($data, $keepLayouts);        $response = $this->getResponse();        $response->setBody($data);        if (!$this->suppressExit) {            $response->sendResponse();            exit;        }        return $data;    }    /**     * Strategy pattern: allow calling helper as broker method     *     * Prepares autocompletion data and, if $sendNow is true, immediately sends      * response.     *      * @param  mixed $data      * @param  bool  $sendNow      * @param  bool  $keepLayouts      * @return string|void     */    public function direct($data, $sendNow = true, $keepLayouts = false)    {        if ($sendNow) {            return $this->sendAutoCompletion($data, $keepLayouts);        }        return $this->prepareAutoCompletion($data, $keepLayouts);    }}

⌨️ 快捷键说明

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