コード例 #1
0
ファイル: DefaultController.php プロジェクト: BoBRoID/new.k-z
 public function actionUpload()
 {
     $newsID = preg_replace('/\\D+/', '', $_SERVER['HTTP_REFERER']);
     $news = News::findOne($newsID);
     $filename = $news ? $news->link . rand(0, 10000) : \Yii::$app->security->generateRandomString();
     $file = UploadHelper::__upload($_FILES['file'], ['filename' => $filename]);
     $image = new Image(['userID' => \Yii::$app->user->id, 'newsID' => $newsID, 'link' => \Yii::$app->params['cdn'] . '/images/stories/' . $file]);
     $image->save(false);
     if (\Yii::$app->request->isAjax) {
         \Yii::$app->response->format = 'json';
         return ['filelink' => $image->link, 'id' => "img{$image->id}"];
     }
     return $image;
 }
コード例 #2
0
ファイル: FileBehavior.php プロジェクト: vastander/yii2-eer
 public function ruleFile()
 {
     return [[['savedFile'], 'safe'], [['savedFile'], 'file', 'extensions' => ['jpg', 'gif', 'png', 'pdf', 'txt', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'zip'], 'maxSize' => UploadHelper::fileUploadMaxSize()], ['deleteFlag', 'boolean']];
 }
コード例 #3
0
ファイル: UploadHelper.php プロジェクト: BoBRoID/new.k-z
 /**
  *
  * simple way to upload image
  *
  */
 public static function __upload($image, $options = [])
 {
     $options['directory'] = isset($options['directory']) && !empty($options['directory']) ? $options['directory'] : \Yii::getAlias('@frontend') . '/web/images/stories';
     $options['imgsize'] = isset($options['imgsize']) && !empty($options['imgsize']) ? $options['imgsize'] : '';
     $options['fullReturn'] = isset($options['fullReturn']) && !empty($options['fullReturn']) ? $options['fullReturn'] : false;
     $f = UploadHelper::factory($options['directory'], false);
     $f->file($image);
     if (isset($options['filename']) && !empty($options['filename'])) {
         preg_match('/\\.[0-9a-z]{1,5}$/', strtolower($f->file_post['name']), $matches);
         $f->filename = $options['filename'] . $matches['0'];
     }
     $f = $f->upload();
     return $options['fullReturn'] ? $f : $f['filename'];
 }