示例#1
0
 /**
  * Processes
  * @param $files
  * @return Collection
  */
 public function process($files)
 {
     $result = new Collection();
     foreach ($this->handlers as $selector => $handler) {
         /* @var $handler Handler */
         $selectedFiles = Arr::getBySelector($files, $selector);
         if (!$selectedFiles || !is_array($selectedFiles) || empty($selectedFiles)) {
             continue;
         }
         foreach ($selectedFiles as $path => $file) {
             if (is_array($file)) {
                 $result[$path] = $handler->process($file);
             }
         }
     }
     return $result;
 }
示例#2
0
文件: Handler.php 项目: aleksabp/bolt
 /**
  * Processes a file upload and returns an upload result file/collection
  *
  * @param  array                         $files
  * @return Result\Collection|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);
 }