HashUtils

hash工具,主要用来计算字符串的hash值。提供三种hash算法, BKDR, JS, DJP. 根据需要自行选择

方法名 方法说明
BKDRHash 采用bkdr算法计算hash值
JSHash 采用js算法计算hash值
DJPHash DJP hash 算法,冲突率低,但是算法比较复杂,效率不是很高。

JsonResult

用来返回json视图。提供了以下API:

success($message='操作成功', $data=array())

返回一个带有默认返回信息的成功的json视图

fail($message='系统开了小差', $data)

返回一个带有默认返回信息的失败的json视图

jsonResult($code, $message, $data=array())

返回一个自定义提示信息的json视图

参数名称 参数类型 参数说明
$code string|int 返回错误代码 200 => 'OK.',201 => 'Created.',204 => 'No Contents.',400 => 'Bad Request.',401 => 'Not Authorized.',503 => 'Access Forbidden.',404 => 'Not Found.',405 => 'Method Not Allow.',500 => 'Server internal Error.',
$message string 返回信息
$data array 返回的数据

isSuccess()

判断操作结果是否成功

putData($key, $value)

往返回结果中压入一条数据

class DemoAction extends CommonAction {

    //返回json视图
    public function index(HttpRequest $request) {

        $model = Loader::model('User');
        $list = $model->getItems();

        AjaxResult::ajaxResult(OP_SUCCESS, '获取数据成功!', $list);
    }

    //作为http API的返回结果vo
    public function getUser() {
        $res = APIClient::send($url, $params);
        if ( $res->isSuccess() ) {
            return $res->getData();
        } else {
            return $res->getMessage();
        }
    }
}

ModelTransformUtils

模型转换工具,把基本实体对象转成Hash数组,或者把Hash数组转为实体对象

map2Model($class, $map) 将map 转换为数据模型

  • $class 模型类名称(带命名空间)
  • $map 待转换的 map

model2Map($model) 模型对象转为map

$map = array('id' => 1, 'username' => 'xiaoming', 'mobile' => '18654325787');
$user = ModelTransformUtils::map2Model('user\models\User', $map);

$map = ModelTransformUtils::model2Map($user);

需要注意的是,这个转换工具仅限于模型的属性是基本数据类型,如果模型的属性是对象或者是数组,则不能用此工具转换

Log

这是一个简单的日志工具,用来记录错误日志,或者调试信息的。因为线上你是不能抛出异常的,而nginx记录的日志可操作性有限。Log 提供2个方法

Log::info($message, $logFile='') 记录提示信息 Log::error($message, $logFile='') 记录错误信息

参数名称 参数类型 参数说明
$message mixed 消息内容,可以是字符串,数组,普通对象,或者是异常对象
$logFile string 日志文件名称,如果没有指定, 则记录到默认的日志文件
Copyright © HerosPHP 2016 all right reserved,powered by Gitbook最后更新时间: 2017-03-28 22:18:14

results matching ""

    No results matching ""