পিএইচপি ব্যবহার করে কীভাবে একটি ডিরেক্টরি থেকে অন্য ডিরেক্টরিতে একটি ফাইল অনুলিপি করবেন?


158

বলুন আমি করেছি ফাইল পেয়েছিলাম test.phpমধ্যে fooভাল হিসাবে হিসাবে ডিরেক্টরির bar। আমি কিভাবে প্রতিস্থাপন করতে পারেন bar/test.phpসঙ্গে foo/test.phpব্যবহার PHP? আমি উইন্ডোজ এক্সপিতে আছি, ক্রস প্ল্যাটফর্ম সমাধানটি দুর্দান্ত তবে উইন্ডোজ পছন্দসই।

উত্তর:


285

আপনি copy()ফাংশনটি ব্যবহার করতে পারেন :

// Will copy foo/test.php to bar/test.php
// overwritting it if necessary
copy('foo/test.php', 'bar/test.php');


এর ম্যানুয়াল পৃষ্ঠা থেকে কয়েকটি প্রাসঙ্গিক বাক্য উদ্ধৃত করা হচ্ছে:

গন্তব্যস্থানে ফাইল উত্সের একটি অনুলিপি তৈরি করে।

গন্তব্য ফাইলটি ইতিমধ্যে উপস্থিত থাকলে এটি ওভাররাইট করা হবে।


8
না copy( 'foo/test.php', 'bar/test.php' )তৈরি barডিরেক্টরি এটি ইতিমধ্যেই বিদ্যমান নেই?
হেনরিয়াইট

1
@ শেইনরাইট, এটি ডিরেক্টরি নিজেই তৈরি করে না। এটি আপনাকে ম্যানুয়ালি করতে হবে। এটি পিএইচপি ম্যানুয়ালটিতে দেখুন
হাসিব জুলফিকার

25

আপনি নাম পরিবর্তন করতে পারেন () ফাংশন:

rename('foo/test.php', 'bar/test.php');

যদিও করবে সরাতে ফাইল না কপি


22
আমি আশ্চর্য হয়েছি কেন এই ফাংশনটির নামকরণ হয়েছে এবং নোটটি সরানো হয়েছে বা কিছু
themhz

@ থেমিস আমিও আশা করি তারা এই ফাংশনটির নাম দিয়েছে move। কারও কাছে যদি একটু লিনাক্স এক্সপোজার থাকে তবে এটি স্বজ্ঞাগত হবে।
Fr0zenFyr

4
@ থেমিস কারণ rename('foo/test1.php', 'foo/test2.php');;)
আনন্দ সিং


8

আপনি অনুলিপি করতে পারেন এবং অতীতে এটি আপনাকে সহায়তা করবে

<?php
$file = '/test1/example.txt';
$newfile = '/test2/example.txt';
if(!copy($file,$newfile)){
    echo "failed to copy $file";
}
else{
    echo "copied $file into $newfile\n";
}
?>

7

পিএইচপি ব্যবহার করে একটি ফাইল থেকে অন্য ফোল্ডারে সমস্ত ফাইল অনুলিপি করার সর্বোত্তম উপায়

<?php
$src = "/home/www/example.com/source/folders/123456";  // source folder or file
$dest = "/home/www/example.com/test/123456";   // destination folder or file        

shell_exec("cp -r $src $dest");

echo "<H2>Copy files completed!</H2>"; //output when done
?>

1

হাই ছেলেরা গতিশীল অনুলিপি এবং আটকানো ব্যবহার করে কীভাবে অনুলিপি করতে হবে তাও যুক্ত করতে চেয়েছিলেন।

যাক আমরা প্রকৃত ফোল্ডারটি ব্যবহারকারী তৈরি করব তা জানি না তবে আমরা জানি সেই ফোল্ডারে আমাদের ফাইলগুলি অনুলিপি করা প্রয়োজন, কিছু ফাংশন সক্রিয় করতে যেমন মুছে ফেলা, আপডেট করা, দেখা ইত্যাদি files

আপনি এরকম কিছু ব্যবহার করতে পারেন ... আমি যে জটিল প্রকল্পে বর্তমানে ব্যস্ত রয়েছি তার একটিতে আমি এই কোডটি ব্যবহার করেছি। আমি কেবল এটি নিজেই তৈরি করি কারণ ইন্টারনেটে আমার কাছে পাওয়া সমস্ত উত্তর আমাকে একটি ত্রুটি দিয়েছিল।

    $dirPath1 = "users/$uniqueID"; #creating main folder and where $uniqueID will be called by a database when a user login.
    $result = mkdir($dirPath1, 0755);
            $dirPath2 = "users/$uniqueID/profile"; #sub folder
            $result = mkdir($dirPath2, 0755);
                $dirPath3 = "users/$uniqueID/images"; #sub folder 
                $result = mkdir($dirPath3, 0755);
                    $dirPath4 = "users/$uniqueID/uploads";#sub folder
                    $result = mkdir($dirPath4, 0755);
                    @copy('blank/dashboard.php', 'users/'.$uniqueID.'/dashboard.php');#from blank folder to dynamic user created folder
                    @copy('blank/views.php', 'users/'.$uniqueID.'/views.php'); #from blank folder to dynamic user created folder
                    @copy('blank/upload.php', 'users/'.$uniqueID.'/upload.php'); #from blank folder to dynamic user created folder
                    @copy('blank/delete.php', 'users/'.$uniqueID.'/delete.php'); #from blank folder to dynamic user created folder

আমি মনে করি ফেসবুক বা টুইটার প্রতিটি নতুন ব্যবহারকারী ড্যাশবোর্ড গতিশীল তৈরি করতে এরকম কিছু ব্যবহার করে ....


0

আপনি নাম () এবং অনুলিপি () উভয়ই ব্যবহার করতে পারেন।

আমার যদি আর উত্স ফাইলটির অবস্থানটিতে না থাকার প্রয়োজন হয় তবে আমি নাম পরিবর্তন করতে পছন্দ করি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.