|
|
@@ -38,9 +38,11 @@ class UploadController extends BaseController
|
|
|
$month = date("Ym");
|
|
|
$date = date("d");
|
|
|
$path = dirUtil::getImgUploadDir() . "/{$mainId}/{$shopId}/{$month}/{$date}/";
|
|
|
- if (!file_exists($path)) {
|
|
|
- //检查是否有该文件夹,如果没有就创建,并给予最高权限
|
|
|
- mkdir($path, 0700, true);
|
|
|
+ // 检查目录是否存在,如果不存在则尝试创建。
|
|
|
+ // 使用 @ 抑制 mkdir 在目录已存在时(并发导致)的 warning。
|
|
|
+ // 如果 mkdir 失败,则再次检查目录是否存在,以区分是并发创建成功还是真的创建失败。
|
|
|
+ if (!is_dir($path) && !@mkdir($path, 0700, true) && !is_dir($path)) {
|
|
|
+ throw new \yii\web\ServerErrorHttpException("目录 '{$path}' 创建失败。");
|
|
|
}
|
|
|
$preFileName = stringUtil::uniqueFileName();
|
|
|
$newFile = $preFileName . ".jpg";
|