# File Upload & Delete helper function for Laravel

Here is a quick helper function to upload the file in laravel application.

```php
if (!function_exists('upload_file')) {
    function upload_file($request, $name, $path)
    {
        // //handle file upload
        if ($request->hasFile($name)) {
            //Get file name with extension
            $fileNameWithExt = $request->file($name)->getClientOriginalName();

            //Get just filename
            $fileName = pathinfo($fileNameWithExt, PATHINFO_FILENAME);
            //Get just extension
            $fileextension = $request->file($name)->getClientOriginalExtension();

            $fileNameToStore = md5($fileName . '_' . time()) . '.' . $fileextension;
            $pathToStore = $request->file($name)->storeAs('public/' . $path, $fileNameToStore);
            return "storage/" . $path . $fileNameToStore;
        }
    }
}
```

Here,

- `$request` is the instance of `Illuminate\Http\Request`  which contains all the request post informations.

- `$name` is the identifier of the file to be uploaded. This is generally the `name` value of the file input field.

- `$path` is the writable directory to where the file should be uploaded.

That's it, add this function to the helper.php and use anywhere through out the laravel project.



Here is a function to delete the file

```php
if (!function_exists('delete_file')) {
    function delete_file($path)
    {
        File::delete($path);
    }
}
```

Here 
- `$path` is the path of the file to be deleted. 


That's it. Thanks for reading. Happy Coding!
