1. 云栖社区>
  2. PHP教程>
  3. 正文

微服务之数据库服务-服务端(PHP+YII)

作者:用户 来源:互联网 时间:2017-11-30 10:15:36

数据库phpyii服务端(

微服务之数据库服务-服务端(PHP+YII) - 摘要: 本文讲的是微服务之数据库服务-服务端(PHP+YII), 以YII、自定义数据操作两种方式组成的数据库微服务的服务端。 客户端介绍 YII控制器 BaseController 所有数据库操作请求的基类,通过获取对应的参数实例化数据库类。提供其他基础操作函数。 初始化数据库代码 // 返回值为JS

以YII、自定义数据操作两种方式组成的数据库微服务的服务端。
客户端介绍

YII控制器

BaseController

所有数据库操作请求的基类,通过获取对应的参数实例化数据库类。提供其他基础操作函数。

初始化数据库代码

// 返回值为JSONYii::$app->response->format = Response::FORMAT_JSON;// 初始化数据库信息$request = Yii::$app->request;$dbName    = $request->get('_db', $request->post('_db', ''));$tableName = $request->get('_table', $request->post('_table', ''));$dbType    = $request->get('_type', $request->post('_type', 'mysql'));$this->initDb($dbName, $tableName, $dbType);

DmlController、DqlController

继承自BaseController,提供自定义的函数操作处理,对应客户端Dg_Db_Hnb类。

insert

/** * insert 插入数据 * @return JSON */public function actionInsert(){    // 参数    $request  = Yii::$app->request;    $data     = $request->post('data', array());    if ( empty($data) || !is_array($data) ) {        return $this->renderJson(ERROR, ERROR_PARAM_DATA_WRONG, '数据参数错误!');    }    // 插入    $response = $this->_dbBase->insert($data);    // 输出    return $response;}

query

/** * 查询数据 * @param  array   $param 查询条件,条件数组或者条件SQL * @param  string  $order 排序规则 * @param  string  $limit 获取条数 * @param  string  $field 查询的列,默认为* * @param  string  $group 分组规则 * @return json   数据列表 */public function actionQuery(){    // 参数    $request = Yii::$app->request;    $param   = $request->get('param', '');    $param   = $this->formatParam($param);    $order   = $request->get('order', false);    $limit   = $request->get('limit', false);    $field   = $request->get('field', '*');    $group   = $request->get('group', false);    // 查询    $response = $this->_dbBase->query($param, $order, $limit, $field, $group);    // 输出    return $response;}

QueryController

继承自BaseController,提供Yii数据操作处理,对应客户端Dg_Db_Yii类。

/** * Yii/db/Query命令请求 */public function actionIndex(){    $request = Yii::$app->request;    $_db     = $request->get('_db', '');    $_call   = $request->get('_call', array());    try {        $results = $this->execute(new /yii/db/Query(), $_call);        return $this->renderJson(SUCCESS, NO_ERROR, $results);    } catch (/Exception $e) {        return $this->renderJson(ERROR, $e->getCode(), $e->getMessage());    }    return $results;}

源码

th7cn

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据库 , php , yii , 服务 端( ,以便于您获取更多的相关知识。