Mercurial > hg > cmmr2012-drupal-site
diff vendor/zendframework/zend-diactoros/src/UploadedFile.php @ 2:5311817fb629
Theme updates
author | Chris Cannam |
---|---|
date | Tue, 10 Jul 2018 13:19:18 +0000 |
parents | c75dbcec494b |
children |
line wrap: on
line diff
--- a/vendor/zendframework/zend-diactoros/src/UploadedFile.php Thu Jul 05 15:32:06 2018 +0100 +++ b/vendor/zendframework/zend-diactoros/src/UploadedFile.php Tue Jul 10 13:19:18 2018 +0000 @@ -1,9 +1,7 @@ <?php /** - * Zend Framework (http://framework.zend.com/) - * - * @see http://github.com/zendframework/zend-diactoros for the canonical source repository - * @copyright Copyright (c) 2015-2016 Zend Technologies USA Inc. (http://www.zend.com) + * @see https://github.com/zendframework/zend-diactoros for the canonical source repository + * @copyright Copyright (c) 2015-2017 Zend Technologies USA Inc. (http://www.zend.com) * @license https://github.com/zendframework/zend-diactoros/blob/master/LICENSE.md New BSD License */ @@ -14,15 +12,50 @@ use Psr\Http\Message\UploadedFileInterface; use RuntimeException; +use function dirname; +use function fclose; +use function fopen; +use function fwrite; +use function is_dir; +use function is_int; +use function is_resource; +use function is_string; +use function is_writable; +use function move_uploaded_file; +use function sprintf; +use function strpos; + +use const PHP_SAPI; +use const UPLOAD_ERR_CANT_WRITE; +use const UPLOAD_ERR_EXTENSION; +use const UPLOAD_ERR_FORM_SIZE; +use const UPLOAD_ERR_INI_SIZE; +use const UPLOAD_ERR_NO_FILE; +use const UPLOAD_ERR_NO_TMP_DIR; +use const UPLOAD_ERR_OK; +use const UPLOAD_ERR_PARTIAL; + class UploadedFile implements UploadedFileInterface { + const ERROR_MESSAGES = [ + UPLOAD_ERR_OK => 'There is no error, the file uploaded with success', + UPLOAD_ERR_INI_SIZE => 'The uploaded file exceeds the upload_max_filesize directive in php.ini', + UPLOAD_ERR_FORM_SIZE => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was ' + . 'specified in the HTML form', + UPLOAD_ERR_PARTIAL => 'The uploaded file was only partially uploaded', + UPLOAD_ERR_NO_FILE => 'No file was uploaded', + UPLOAD_ERR_NO_TMP_DIR => 'Missing a temporary folder', + UPLOAD_ERR_CANT_WRITE => 'Failed to write file to disk', + UPLOAD_ERR_EXTENSION => 'A PHP extension stopped the file upload.', + ]; + /** - * @var string + * @var string|null */ private $clientFilename; /** - * @var string + * @var string|null */ private $clientMediaType; @@ -114,7 +147,10 @@ public function getStream() { if ($this->error !== UPLOAD_ERR_OK) { - throw new RuntimeException('Cannot retrieve stream due to upload error'); + throw new RuntimeException(sprintf( + 'Cannot retrieve stream due to upload error: %s', + self::ERROR_MESSAGES[$this->error] + )); } if ($this->moved) { @@ -147,7 +183,10 @@ } if ($this->error !== UPLOAD_ERR_OK) { - throw new RuntimeException('Cannot retrieve stream due to upload error'); + throw new RuntimeException(sprintf( + 'Cannot retrieve stream due to upload error: %s', + self::ERROR_MESSAGES[$this->error] + )); } if (! is_string($targetPath) || empty($targetPath)) {