| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 | <?php// +----------------------------------------------------------------------// | ThinkPHP [ WE CAN DO IT JUST THINK IT ]// +----------------------------------------------------------------------// | Copyright (c) 2006-2014 http://thinkphp.cn All rights reserved.// +----------------------------------------------------------------------// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )// +----------------------------------------------------------------------// | Author: liu21st <liu21st@gmail.com>// +----------------------------------------------------------------------namespace Think\Controller;/** * ThinkPHP RPC控制器类 */class RpcController {    protected $allowMethodList  =   '';    protected $debug            =   false;   /**     * 架构函数     * @access public     */    public function __construct() {        //控制器初始化        if(method_exists($this,'_initialize'))            $this->_initialize();        //导入类库        Vendor('phpRPC.phprpc_server');        //实例化phprpc        $server     =   new \PHPRPC_Server();        if($this->allowMethodList){            $methods    =   $this->allowMethodList;        }else{            $methods    =   get_class_methods($this);            $methods    =   array_diff($methods,array('__construct','__call','_initialize'));           }        $server->add($methods,$this);        if(APP_DEBUG || $this->debug ) {            $server->setDebugMode(true);        }        $server->setEnableGZIP(true);        $server->start();        echo $server->comment();    }    /**     * 魔术方法 有不存在的操作的时候执行     * @access public     * @param string $method 方法名     * @param array $args 参数     * @return mixed     */    public function __call($method,$args){}}
 |