// +---------------------------------------------------------------------- namespace addons\maintain\controller; use app\admin\controller\Base; use think\Cache; class Action extends Base { /* * 日常维护 */ public function maintain() { $action=input('action'); switch ($action) { case 'download_log' : case 'view_log': $logs = array(); foreach (list_file(LOG_PATH) as $f) { if ($f ['isDir']) { foreach (list_file($f ['pathname'] . '/', '*.log') as $ff) { if ($ff ['isFile']) { $spliter = '=========================='; $logs [] = $spliter . ' ' . $f ['filename'] . '/' . $ff ['filename'] . ' ' . $spliter . "\n\n" . file_get_contents($ff ['pathname']); } } } } if ('download_log' == $action) { force_download_content('log_' . date('Ymd_His') . '.log', join("\n\n\n\n", $logs)); } else { echo '
' . htmlspecialchars(join("\n\n\n\n", $logs)) . '';
}
break;
case 'clear_log' :
remove_dir(LOG_PATH);
$this->success ('清除日志成功',url('admin/Index/index'));
break;
case 'debug_on' :
$data = array('app_debug'=>true);
$res=sys_config_setbyarr($data);
if($res === false){
$this->error('打开调试失败',url('admin/Index/index'));
}else{
Cache::clear();
$this->success('已打开调试',url('admin/Index/index'));
}
break;
case 'debug_off' :
$data = array('app_debug'=>false);
$res=sys_config_setbyarr($data);
if($res === false){
$this->error('关闭调试失败',url('admin/Index/index'));
}else{
Cache::clear();
$this->success('已关闭调试',url('admin/Index/index'));
}
break;
case 'trace_on' :
$data = array('app_trace'=>true);
$res=sys_config_setbyarr($data);
if($res === false){
$this->error('打开Trace失败',url('admin/Index/index'));
}else{
Cache::clear();
$this->success('已打开Trace',url('admin/Index/index'));
}
break;
case 'trace_off' :
$data = array('app_trace'=>false);
$res=sys_config_setbyarr($data);
if($res === false){
$this->error('关闭Trace失败',url('admin/Index/index'));
}else{
Cache::clear();
$this->success('已关闭Trace',url('admin/Index/index'));
}
break;
}
}
}