/** * 构造方法 * * 初始化数据 */ public function __construct() { try { $this->app = new Application(APP_INI); $this->app->bootstrap(); } catch (Exception $e) { $this->logException($e); exit(1); } }
public function perform() { try { $app = new Application(INI_PATH); $request = new RequestSimple('CLI', $this->args['module'], $this->args['controller'], $this->args['action'], $this->args['args']); $app->bootstrap()->getDispatcher()->dispatch($request); } catch (Exception $e) { exit(1); } }
/** * 导出API的api方法 * * @access public * @param string $module 应用模块名 * @param string $controller 对应模块内的控制器 * @param string $action 对应控制器中的动作名 * @param mixed $parameters 请求传递的参数 * @return string API调用的响应正文 */ public function api($module, $controller, $action, $parameters) { try { $app = new Application(INI_PATH, 'product'); $request = new RequestSimple('API', $module, $controller, $action, $parameters); $response = $app->bootstrap()->getDispatcher()->dispatch($request); return $response->getBody(); } catch (Exception $e) { if (Application::app()->getConfig()->application->queue->log->switch) { $error = new ErrorLog($e, Dispatcher::getInstance()->getRequest()); $error->errorLog(); } $error = explode(ES, $e->getMessage(), 2); if (isset($error[1])) { return $error[1]; } } }
<?php use Yaf\Application; define('APP_PATH', dirname(__DIR__) . '/app', true); $app = new Application(APP_PATH . '/conf/app.ini'); $app->bootstrap()->run();