/**
* 输出json
* @param $msg
* @param int $errno
*/
public function printOutError($msg = '操作失败',$errno = 10099) {
$result = [
'msg' => $msg,
'errno' => $errno
];
setlog($_POST,$result,CONTROLLER_NAME.'/'.ACTION_NAME);
$this->setErr($errno, $msg);
$this->Send();
}
/**
* 输出json
* @param array $out_data
* @param string $msg
*/
public function printOutSuccess($out_data = [],$msg='操作成功') {
$result = [
'msg' => $msg,
'data' => $out_data
];
setlog($_POST,$result,CONTROLLER_NAME.'/'.ACTION_NAME);
$this->setErr(0, $msg);
if ($out_data) {
$this->setAttr('data', $out_data);
}
$this->Send();
}
// 全局通用日志工具
function setlog($param = [],$result = [],$name='',$filename = 'xfy.log',$path = '/tmp/'){
// 没有目录则创建目录
if (!mkdir($path, 0777, true) && !is_dir($path)) {
throw new \RuntimeException(sprintf('目录 "%s" 创建失败', $path));
} // 目录,权限,递归
if ($result && $param) {
$arr = array(
'param' => $param,
'result' => $result,
'name' => $name,
'time' => date('Y-m-d H:i:s')
);
} else {
$arr = array(
'content' => $param ?:$result,
'name' => $name,
'time' => date('Y-m-d H:i:s')
);
}
file_put_contents($path.$filename,var_export($arr,true).PHP_EOL,FILE_APPEND);
}
可以有效的记录,每个接口下的错误日志,参数与返回数据。