public function actionUploadfile()
 {
     $request = \Yii::$app->request;
     if (!$request->isAjax) {
         Json::ajaxreturn(['state' => 'error', 'msg' => '非法请求']);
     }
     if (\Yii::$app->user->isGuest) {
         Json::ajaxreturn(['state' => 'error', 'msg' => '请先登录']);
     }
     $file = UploadedFile::getInstanceByName('jquploadfile');
     if ($file->size > 1024 * 1024 * 60) {
         Json::ajaxreturn(['state' => 'error', 'msg' => '上传文件不得大于60M']);
     }
     $allow_ext = array("png", "jpg", "jpeg", "gif", "bmp", "flv", "swf", "mkv", "avi", "rm", "rmvb", "mpeg", "mpg", "ogg", "ogv", "mov", "wmv", "mp4", "webm", "mp3", "wav", "mid", "rar", "zip", "tar", "gz", "7z", "bz2", "cab", "iso", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "pdf", "txt", "md", "xml");
     if (!in_array($file->getExtension(), $allow_ext)) {
         Json::ajaxreturn(['state' => 'error', 'msg' => '只能上传' . implode(",", $allow_ext) . '格式的文件']);
     } else {
         $user_id = \Yii::$app->user->getId();
         $user_id = sprintf("%05d", $user_id);
         if (!$user_id) {
             $dirNo = "common/";
         } else {
             $dirNo = 'u' . $user_id . '/';
         }
         $date = date("Ymd", time()) . '/';
         $saveDir = UPLOADROOT . $dirNo . 'Files/' . $date;
         FileHelper::createDirectory($saveDir);
         $url = $saveDir . md5($file->getBaseName() . $file->getExtension()) . '_' . date('His', time()) . '.' . $file->getExtension();
         $file->saveAs($url);
         $size = ceil($file->size / 1024);
         if ($size > 1024) {
             $size = sprintf("%.2f", $size / 1024) . "M";
         } else {
             $size = $size . "K";
         }
         Json::ajaxreturn(['state' => 'success', 'msg' => '上传成功', 'filename' => $file->name, 'url' => $url, 'size' => $size]);
     }
 }