You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.1 KiB
PHP
36 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace brain\utility
|
|
|
|
use Psr\Http\Message\UploadedFileInterface;
|
|
|
|
define("MAXIMUM_FILESIZE", "10485760"); //10 MB
|
|
class FileUploader
|
|
{
|
|
public static function uploadFile(string $directory, $file)
|
|
{
|
|
$response = [];
|
|
try {
|
|
if (!is_dir($directory)) {
|
|
//Directory does not exist, so lets create it.
|
|
mkdir($directory, 0755, true);
|
|
}
|
|
//$upload = move_uploaded_file($file->getClientFileName(), $directory);
|
|
//$extension = pathinfo($file->getClientFilename(), PATHINFO_EXTENSION);
|
|
|
|
// see http://php.net/manual/en/function.random-bytes.php
|
|
//$basename = bin2hex(random_bytes(8));
|
|
//$filename = sprintf("%s.%0.8s", $basename, $extension);
|
|
|
|
//echo "**FILE** " . $file->getClientFileName();
|
|
|
|
$file->moveTo($directory . "/" . urlencode($file->getClientFileName()));
|
|
} catch (RuntimeException $e) {
|
|
echo "ERROR " . $e->getMessage();
|
|
|
|
//echo "failed to upload image: " . $e->getMessage();
|
|
//throw new Error("Failed to upload image file");
|
|
}
|
|
}
|
|
}
|