Skip to content
Readerstacks logo Readerstacks
  • Home
  • Softwares
  • Angular
  • Php
  • Laravel
  • Flutter
Readerstacks logo
Readerstacks
How to Copy Folder Recursively One Folder to Another in Laravel

How to Copy Folder Recursively One Folder to Another in Laravel ?

Aman Jain, May 26, 2022May 26, 2022

In this article i will help you to copy the folders recursively from one folder to another in laravel .File System is used to perform the file system based operations like copy Folder Recursively. For this purpose laravel uses Illuminate\Filesystem\Filesystem class in laravel. Laravel provides inbuilt library to access the file system and we can do multiple robust operations using the libraries.

Sometime in our application we want to copy the folder or files from one directory to another in this case we can use File::copyDirectory() of laravel inbuilt library. If we perform same operations using the core php functions than it can be a hectic or lengthy code to implement but using the packages or library it will be easier to implement.

In this article I will use Illuminate\Filesystem\Filesystem class and File::copyDirectory() method to copy the entire directory recursively in the folder. copyDirectory Method accepts two parameters as below

File::copyDirectory($source, $destination)

Example Usage:

File::copyDirectory(public("images"),public("copiedimages"));

Let’s understand copy Folder Recursively from one folder to another in Laravel with example step by step

Step 1: Create a fresh laravel project

Open a terminal window and type below command to create a new project

composer create-project --prefer-dist laravel/laravel blog

You can also read this to start with new project

Step 2 : Create controller

Let’s create a controller and add method performCopyDirectory

php artisan make:controller FolderController

and add the below code

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use File;
class FolderController extends Controller
{
    public function performCopyDirectory(Request $request){
        
            $sourcePath=public_path('images');
            $destinationPath=public_path('copiedimages');
         
            if (!File::exists( $storageDestinationPath)) {
                File::copyDirectory($sourcePath,$storageDestinationPath);
            }
            return response("Folder copied successfully");
         }
  
      }
}

In above code First of all we are checking the directory is exist or not then if available then we are copying the directory at the destination location.

Step 3: Create two routes in routes/web.php

Create a route to create the directory

routes/web.php

<?php

use App\Http\Controllers\FolderController;
use Illuminate\Support\Facades\Route;

Route::get("/copy-directory",[FolderController::class,"performcopyDirectory"]);

Related

Php Laravel Laravel 9 Copyfolderlaravel

Post navigation

Previous post
Next post

Related Posts

Php How to add watermark(image text) to image in laravel

How to add watermark(image/ text) to image in laravel 9 ?

May 15, 2022May 15, 2022

In this tutorial i will show you add watermark(image/ text) to image in laravel 9. Sometimes for privacy or copyright of images we need to add watermark to the images, watermark can be a text or image. We will use laravel package to add watermark and i will show you…

Read More
Laravel Image Conversion to WebP in the fly Laravel

Image Conversion to WebP in the fly Laravel

February 22, 2024March 16, 2024

Are you looking to optimize your web application’s image handling and delivery speed? In the world of web development Image Conversion to WebP in the fly Laravel is key, and one of the ways to achieve faster loading times for images is by using the WebP format. Laravel, a popular…

Read More
Php How to Get Current Url in Blade File Laravel

How to Get Current Url in Blade File Laravel ?

October 27, 2022March 16, 2024

Sometimes in our application we want to Get Current Url in Blade file Laravel because we want to add specific conditions to show the data on behalf of current url. It can be complete url, route name and query params too so that we can fetch the data accordingly and…

Read More

Aman Jain
Aman Jain

With years of hands-on experience in the realm of web and mobile development, they have honed their skills in various technologies, including Laravel, PHP CodeIgniter, mobile app development, web app development, Flutter, React, JavaScript, Angular, Devops and so much more. Their proficiency extends to building robust REST APIs, AWS Code scaling, and optimization, ensuring that your applications run seamlessly on the cloud.

Categories

  • Angular
  • CSS
  • Dart
  • Devops
  • Flutter
  • HTML
  • Javascript
  • jQuery
  • Laravel
  • Laravel 10
  • Laravel 11
  • Laravel 9
  • Mysql
  • Php
  • Softwares
  • Ubuntu
  • Uncategorized

Archives

  • June 2025
  • May 2025
  • April 2025
  • October 2024
  • July 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • July 2023
  • March 2023
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021

Recent Posts

  • The Resilience of Nature: How Forests Recover After Fires
  • Understanding Laravel Cookie Consent for GDPR Compliance
  • Understanding High Vulnerabilities: A Critical Overview of the Week of May 12, 2025
  • Installing a LAMP Stack on Ubuntu: A Comprehensive Guide
  • Understanding High Vulnerabilities: A Deep Dive into Recent Security Concerns
©2023 Readerstacks | Design and Developed by Readerstacks
Go to mobile version