51 lines
1.1 KiB
PHP
51 lines
1.1 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Helpers;
|
||
|
|
|
||
|
|
use App\Http\Router;
|
||
|
|
use App\Kernel;
|
||
|
|
|
||
|
|
class UploadFiles {
|
||
|
|
|
||
|
|
public static function uploadFolderPath(){
|
||
|
|
return APP_ROOT . 'public/uploads/';
|
||
|
|
}
|
||
|
|
public static function uploadFolderUri(){
|
||
|
|
return Kernel::$configs['general']['website_url'] . 'uploads/';
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @param string $fileName
|
||
|
|
*
|
||
|
|
* @return string|int
|
||
|
|
*
|
||
|
|
* 1: Pas de fichier $fileArg
|
||
|
|
* 2: Erreur dans le fichier
|
||
|
|
* 3: Déjà existant.
|
||
|
|
* 4: Erreur dans le déplacement.
|
||
|
|
*/
|
||
|
|
public static function uploadFile( string $fileArg ): string|int {
|
||
|
|
|
||
|
|
if( !isset( $_FILES[ $fileArg ] ) )
|
||
|
|
return 1;
|
||
|
|
|
||
|
|
$file = $_FILES[ $fileArg ];
|
||
|
|
if( $file['error'] != 0 )
|
||
|
|
return 2;
|
||
|
|
|
||
|
|
$tempFileName = $file['tmp_name'];
|
||
|
|
$fileName = $file['name'];
|
||
|
|
|
||
|
|
$full_name = self::uploadFolderPath() . $fileName;
|
||
|
|
$full_uri = self::uploadFolderUri() . $fileName;
|
||
|
|
|
||
|
|
if( file_exists( $full_name ) )
|
||
|
|
return 3;
|
||
|
|
|
||
|
|
if( !move_uploaded_file($tempFileName, $full_name) )
|
||
|
|
return 4;
|
||
|
|
|
||
|
|
return $full_uri;
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|