| Server IP : 74.208.250.37 / Your IP : 216.73.216.114 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ubuntu 6.8.0-124-generic #124-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 13:00:45 UTC 2026 x86_64 User : miferval ( 1000) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/brainwavemx/app/Helper/ |
Upload File : |
<?php
declare(strict_types=1);
namespace App\Helper;
class FileUpload
{
public function Post($data,$path,$max_size){
$result['error'] = $this->validate($data,$max_size);
$result['fileName'] = $this->trim_file_name($data['name']);
if (!file_exists($path)) {
try {
mkdir($path, 0777, true);
} catch(Exeption $e) {
return $e->getMessage();
}
}
if(empty($result['error'])){
$source = fopen($data['file'], 'r');
$file_path = fopen($path . $result['fileName'], 'w');
$result['upload'] = stream_copy_to_stream($source, $file_path);
fclose($source);
fclose($file_path);
}
return $result;
}
public function validate($data,$max_size){
$result['error'] = array();
$file_types = '/\.(gif|jpe?g|png)$/i';
if(!preg_match($file_types, $data['name'])){
array_push($result['error'],'<div>Tipo de archivo no permitido</div>');
}
if($data['size'] > $max_size){
array_push($result['error'],'<div>El archivo es mayor a 1MB</div>');
}
return $result['error'];
}
public function trim_file_name($file_name) {
$file_name = str_replace(' ', '', $file_name);
$parts = explode('.', $file_name);
$i = count($parts)-1;
if (count($parts) > 2) {
$ext = $parts[$i];
$file_name = str_replace('.'.$ext, '', $file_name);
$file_name = str_replace('.', '-', $file_name);
$file_name = $file_name.'.'.$ext;
}
return $file_name;
}
}