当前位置: 首页>>代码示例>>PHP>>正文


PHP Zend_XmlRpc_Server::sendArgumentsToAllMethods方法代码示例

本文整理汇总了PHP中Zend_XmlRpc_Server::sendArgumentsToAllMethods方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_XmlRpc_Server::sendArgumentsToAllMethods方法的具体用法?PHP Zend_XmlRpc_Server::sendArgumentsToAllMethods怎么用?PHP Zend_XmlRpc_Server::sendArgumentsToAllMethods使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Zend_XmlRpc_Server的用法示例。


在下文中一共展示了Zend_XmlRpc_Server::sendArgumentsToAllMethods方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: run

 /**
  * This is the XML-RPC server routine
  *
  * @access public
  * @return void
  */
 public function run()
 {
     Yii::import('application.helpers.remotecontrol.*');
     $oHandler = new remotecontrol_handle($this->controller);
     $RPCType = Yii::app()->getConfig("RPCInterface");
     if (Yii::app()->getRequest()->isPostRequest) {
         if ($RPCType == 'xml') {
             $cur_path = get_include_path();
             set_include_path($cur_path . PATH_SEPARATOR . APPPATH . 'helpers');
             // Yii::import was causing problems for some odd reason
             require_once 'Zend/XmlRpc/Server.php';
             require_once 'Zend/XmlRpc/Server/Exception.php';
             require_once 'Zend/XmlRpc/Value/Exception.php';
             $this->xmlrpc = new Zend_XmlRpc_Server();
             $this->xmlrpc->sendArgumentsToAllMethods(false);
             Yii::import('application.libraries.LSZend_XmlRpc_Response_Http');
             $this->xmlrpc->setResponseClass('LSZend_XmlRpc_Response_Http');
             $this->xmlrpc->setClass($oHandler);
             $result = $this->xmlrpc->handle();
             if ($result instanceof LSZend_XmlRpc_Response_Http) {
                 $result->printXml();
             } else {
                 // a Zend_XmlRpc_Server_Fault with exception message from XMLRPC
                 echo $result;
             }
         } elseif ($RPCType == 'json') {
             Yii::app()->loadLibrary('LSjsonRPCServer');
             if (!isset($_SERVER['CONTENT_TYPE'])) {
                 $serverContentType = explode(';', $_SERVER['HTTP_CONTENT_TYPE']);
                 $_SERVER['CONTENT_TYPE'] = reset($serverContentType);
             }
             LSjsonRPCServer::handle($oHandler);
         }
         foreach (App()->log->routes as $route) {
             $route->enabled = $route->enabled && !$route instanceof CWebLogRoute;
         }
         exit;
     } else {
         // Disabled output of API methods for now
         if (Yii::app()->getConfig("rpc_publish_api") == true && in_array($RPCType, array('xml', 'json'))) {
             $reflector = new ReflectionObject($oHandler);
             foreach ($reflector->getMethods(ReflectionMethod::IS_PUBLIC) as $method) {
                 /* @var $method ReflectionMethod */
                 if (substr($method->getName(), 0, 1) !== '_') {
                     $list[$method->getName()] = array('description' => str_replace(array("\r", "\r\n", "\n"), "<br/>", $method->getDocComment()), 'parameters' => $method->getParameters());
                 }
             }
             ksort($list);
             $aData['method'] = $RPCType;
             $aData['list'] = $list;
             $aData['display']['menu_bars'] = false;
             // Hide normal menu bar
             $this->_renderWrappedTemplate('remotecontrol', array('index_view'), $aData);
         }
     }
 }
开发者ID:wrenchpilot,项目名称:LimeSurvey,代码行数:62,代码来源:remotecontrol.php

示例2: run

 /**
  * This is the XML-RPC server routine
  *
  * @access public
  * @return void
  */
 public function run()
 {
     $RPCType = Yii::app()->getConfig("RPCInterface");
     if ($RPCType == 'xml') {
         $cur_path = get_include_path();
         set_include_path($cur_path . PATH_SEPARATOR . APPPATH . 'helpers');
         // Yii::import was causing problems for some odd reason
         require_once 'Zend/XmlRpc/Server.php';
         require_once 'Zend/XmlRpc/Server/Exception.php';
         require_once 'Zend/XmlRpc/Value/Exception.php';
         $this->xmlrpc = new Zend_XmlRpc_Server();
         $this->xmlrpc->sendArgumentsToAllMethods(false);
         $this->xmlrpc->setClass('remotecontrol_handle', '', $this->controller);
         echo $this->xmlrpc->handle();
     } elseif ($RPCType == 'json') {
         Yii::app()->loadLibrary('jsonRPCServer');
         $oHandler = new remotecontrol_handle($this->controller);
         jsonRPCServer::handle($oHandler);
     }
     exit;
 }
开发者ID:rawaludin,项目名称:LimeSurvey,代码行数:27,代码来源:remotecontrol.php

示例3: testSettingClassWithArgumentsOnlyPassingToConstructor

 public function testSettingClassWithArgumentsOnlyPassingToConstructor()
 {
     $this->_server->setClass('Zend_XmlRpc_Server_testClass', 'test', 'a1', 'a2');
     $this->_server->sendArgumentsToAllMethods(false);
     $this->assertFalse($this->_server->sendArgumentsToAllMethods());
     $request = new Zend_XmlRpc_Request();
     $request->setMethod('test.test4');
     $request->setParams(array('foo'));
     $response = $this->_server->handle($request);
     $this->assertFalse($response instanceof Zend_XmlRpc_Fault);
     $this->assertSame(array('test1' => 'a1', 'test2' => 'a2', 'arg' => array('foo')), $response->getReturnValue());
 }
开发者ID:crodriguezn,项目名称:crossfit-milagro,代码行数:12,代码来源:ServerTest.php

示例4: run

 /**
  * This is the XML-RPC server routine
  *
  * @access public
  * @return void
  */
 public function run()
 {
     $oHandler = new remotecontrol_handle($this->controller);
     $RPCType = Yii::app()->getConfig("RPCInterface");
     if (Yii::app()->getRequest()->isPostRequest) {
         if ($RPCType == 'xml') {
             $cur_path = get_include_path();
             set_include_path($cur_path . PATH_SEPARATOR . APPPATH . 'helpers');
             // Yii::import was causing problems for some odd reason
             require_once 'Zend/XmlRpc/Server.php';
             require_once 'Zend/XmlRpc/Server/Exception.php';
             require_once 'Zend/XmlRpc/Value/Exception.php';
             $this->xmlrpc = new Zend_XmlRpc_Server();
             $this->xmlrpc->sendArgumentsToAllMethods(false);
             $this->xmlrpc->setClass($oHandler);
             echo $this->xmlrpc->handle();
         } elseif ($RPCType == 'json') {
             Yii::app()->loadLibrary('jsonRPCServer');
             jsonRPCServer::handle($oHandler);
         }
         exit;
     } else {
         // Disabled output of API methods for now
         if (1 == 2 && in_array($RPCType, array('xml', 'json'))) {
             $reflector = new ReflectionObject($oHandler);
             foreach ($reflector->getMethods(ReflectionMethod::IS_PUBLIC) as $method) {
                 /* @var $method ReflectionMethod */
                 if (substr($method->getName(), 0, 1) !== '_') {
                     $list[$method->getName()] = array('description' => str_replace(array("\r", "\r\n", "\n"), "<br/>", $method->getDocComment()), 'parameters' => $method->getParameters());
                 }
             }
             ksort($list);
             $aData['method'] = $RPCType;
             $aData['list'] = $list;
             $aData['display']['menu_bars'] = false;
             // Hide normal menu bar
             $this->_renderWrappedTemplate('remotecontrol', array('index_view'), $aData);
         }
     }
 }
开发者ID:ryu1inaba,项目名称:LimeSurvey,代码行数:46,代码来源:remotecontrol.php


注:本文中的Zend_XmlRpc_Server::sendArgumentsToAllMethods方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。