Sirius\Upload\Handler::process PHP Method

process() public method

Processes a file upload and returns an upload result file/collection
public process ( array $files = [] ) : Sirius\Upload\Result\Collection | Sirius\Upload\Result\File
$files array
return Sirius\Upload\Result\Collection | Sirius\Upload\Result\File
    public function process($files = array())
    {
        $isSingle = isset($files['name']) && !is_array($files['name']);
        $files = Arr::normalizeFiles($files);
        foreach ($files as $k => $file) {
            $files[$k] = $this->processSingleFile($file);
        }
        if ($isSingle) {
            return new Result\File($files[0], $this->container);
        }
        return new Result\Collection($files, $this->container);
    }

Usage Example

 /**
  * Handle uploaded files
  *
  * @param Request $request
  * @return Response
  */
 public function filesUpload(Request $request)
 {
     $path = $request->input('path');
     $field = $request->input('field');
     $allowed = Mediabrowser::allowedExtensions($field);
     $uploadHandler = new UploadHandler(public_path($path));
     $uploadHandler->addRule('extension', ['allowed' => $allowed]);
     $result = $uploadHandler->process($_FILES['files'], array(UploadHandler::OPTION_AUTOCONFIRM => false));
     if ($result->isValid()) {
         $result->confirm();
         return Response::json([]);
     } else {
         $result->clear();
         return Response::json($result->getMessages());
     }
 }