示例#1
0
 /**
  * Check if particular uploaded file has valid extension.
  *
  * @static
  * @access   public
  * @param    ModelCore\FileBroker $fileBroker $_FILE like array
  * @param    array                $exts       Extensions list
  * @return   boolean|string
  * @since    1.0.0-alpha
  * @version  1.0.0-alpha
  */
 public static function allowedExt(ModelCore\FileBroker $fileBroker, array $exts)
 {
     if (is_null($fileBroker)) {
         return TRUE;
     }
     $value = $fileBroker->getTempData();
     if (!isset($value['tmp_name'])) {
         return TRUE;
     }
     $mimeType = Helper\MimeTypes::getMimeType($value['tmp_name']);
     $extByMime = Helper\MimeTypes::getExtByType($mimeType);
     $value['type'] = $mimeType;
     if (!$extByMime || !Helper\Arrays::anyInArray($exts, $extByMime)) {
         return __('File with wrong format uploaded! Allowed types of files: :exts.', ['exts' => implode(', ', $exts)]);
     }
     return TRUE;
 }