/** * 一次选中多个文件进行上传,请使用name="files[]" multiple="multiple"上传 * <input type="file" accept="image/gif, image/jpeg, image/png, image/jpg" name="files[]" multiple="multiple"> * @return string[] 多个来自七牛的预览网址 */ public static function actionUploadMultipleFiles() { $fileSizeMax = 5 * 1024 * 1024; $fileTypeAllowed = array('jpg', 'png', 'jpeg', 'gif', 'doc', 'docx', 'pdf'); if (!array_key_exists('files', $_FILES) || count($_FILES['files']) == 0) { return Utility::getArrayForResults(RUNTIME_CODE_ERROR_UNKNOWN, '没有发现上传的文件,请检查。'); } $upload_file = $_FILES['files']; $previewUrls = array(); for ($i = 0; $i < count($upload_file['name']); $i++) { if ($upload_file["size"][$i] > 0) { $file_tmp_path = $upload_file["tmp_name"][$i]; $file_type = pathinfo($upload_file["name"][$i], PATHINFO_EXTENSION); if (isset($fileTypeAllowed) && !in_array(strtolower($file_type), $fileTypeAllowed)) { Utility::getArrayForResults(RUNTIME_CODE_ERROR_PARAM, '提示:不支持上传该' . $file_type . '类型的文件,支持:' . implode('、', $fileTypeAllowed)); } if ($upload_file["size"] > $fileSizeMax) { Utility::getArrayForResults(RUNTIME_CODE_ERROR_PARAM, '错误,文件大小不可超过' . $fileSizeMax . '字节。'); } if ($upload_file["size"][$i] > 5 * 1024 * 1024) { return Utility::getArrayForResults(RUNTIME_CODE_ERROR_UNKNOWN, '错误,文件大小不可超过5MB。'); } $file_tmp_path_type = $file_tmp_path . '.' . $file_type; rename($file_tmp_path, $file_tmp_path_type); $previewUrls[] = W2Qiniu::uploadAndReturnQiniuPreviewUrl($file_tmp_path_type); } } return Utility::getArrayForResults(RUNTIME_CODE_OK, '', $previewUrls); }