انتقال فایل بین دو هاست با دستور کپی PHP
انتقال فایل از یک سرور به سرور دیگر یا از یک هاست به هاست دیگر به سرعت و تنها با نوشتن یک خط کد امکان پذیر است. با اجرای دستور کپی PHP به راحتی و در چند ثانیه می توانید یک فایل از یک هاست به هاست دیگر انتقال دهید.
در ویدئوی زیر مراحل برای کسانی که دوست دارند سریع آپلود فایل های حجیم در هاست را انجام دهند، مراحل کار را توضیح داده ایم. این آموزش به ویژه وقتی که سرعت اینترنت شما کند است یا حجم فایلی که انتقال می دهید زیاد باشد، بسیار کاربردی است.
آموزش دستور کپی php برای انتقال فایل
در این روش از تابع ()copy در PHP استفاده می شود. دقت داشته باشید که برای اجرای این دستورات شما حتما به نسخه php بالای 4 نیاز خواهید داشت.
مرحله اول: ایجاد فایل copy.php در هاست
در ابتدا شما باید در پوشه یا دایرکتوری ای که قصد دارید فایل به صورت مستقیم در آن آپلود شود، یک فایل php ایجاد کنید و ترجیحا نام آن را copy قرار دهید تا مشخص باشد که با چه هدفی ساخته شده است و قرار است چه کاری برای شما انجام دهد.
مرحله دوم: ویرایش فایل php مورد نظر
در مرحله دوم پس از اینکه فایل مورد نظر را ایجاد کردید باید قطعه کد مورد نظر را در فایل php وارد نمایید، برای اینکار باید روی فایل مورد نظر کلیک راست کرده و گزینه ویرایش را انتخاب نمایید.
پس از فعال شدن منوی ویرایش کافی است تا قطعه کد مورد نظر را در آن کپی کرده و سپس فایل را ذخیره کنید، دقت داشته باشید در قسمت اول آدرس سایت مبدا را وارد کنید و در قسمت دوم محلی که قرار است فایل مورد نظر ذخیره شود را بنویسید و فایل را ذخیره کنید.
<?php
copy(“https://www.rtl-theme.com/testfilephp.zip”,”file.zip”);
?>
مرحله سوم: آپلود فایل در هاست به صورت مستقیم
در این مرحله کار تمام شده است و تنها نیاز است تا آپلود را شروع کنید، برای شروع آپلود تنها کاری که نیاز است انجام دهید وارد کردن آدرس فایل php ساخته شده در انتهای آدرس سایت مورد نظر در مرورگر و سپس زدن کلیک اینتر است.
زمانی که علامت چرخش صفحه از حرکت ایستاد و صفحه سفید نمایش داده شد، نشانگر این موضوع است که آپلود شما توسط هاست به پایان رسید! همانطوری که در تصویر زیر مشاهده می کنید، در کسری از ثانیه فایل مورد نظر بدون دانلود و آپلود، در هاست آپلود شده است.
نمایش پیام موفقیت آمیز آپلود فایل در دستور کپی php
پیام خروجی دستور کپی php معمولا به صورت TRUE on success, FALSE on failure نمایش داده خواهد شد که البته قابلیت شخصی سازی در آن وجود دارد و می توانید مشخص کنید که در صورت موفق بودن یا ناموفق بودن آپلود چه خطایی نمایش داده شود.
این دستور در php به صورت زیر خواهد بود:
copy (“from_file”, “to_file”)
پارامتر | توضیح |
---|---|
from_file | نشان دهنده مبدا کپی در این پروسه می باشد، شما باید به صورت دقیق آدرس فایلی که قصد دارید آن را آپلود کنید را وارد نمایید. استفاده از این پارامتر اجباری است. |
to_file | نشان دهنده آدرس یا دایرکتوری مقصد فایل است، شما به صورت دقیق می توانید مشخص کنید که قصد دارید فایل بارگذاری شده در کدام آدرس یا پوشه هاست ذخیره شود. استفاده از این پارامتر اجباری است. اگر فایل مقصد از قبل وجود داشته باشد، فایل مبدا جایگزین آن می شود. |
حالا کافی است برای اینکه بتوانید این عبارت را با یک پیام تعیین وضعیت کنید، آن را در یک دستور شرطی قرار دهید و زمانی که مقدار این شرط درست یا True بود عبارت موفقیت آمیز بودن آپلود و در غیر این صورت عبارت عدم موفقیت آپلود را نمایش دهید.
<?php
$srcfile = “آدرس و فرمت فایل مبدا“;
$destfile = “آدرس و فرمت فایل مقصد“;
if (!copy($srcfile, $destfile)) { echo “متاسفانه قادر به آپلود فایل نبودیم”; }
else { echo “فایل با موفقیت آپلود شد”; }
?>
دیدیم که با استفاده از دستور کپی php انتقال فایلهای با حجم بالا از یک هاست به هاست دیگر به سرعت انجام می شود. در صورتی که برای انجام هر کدام از مراحل با مشکل روبرو شدید در قسمت دیدگاه ها سوال خود را مطرح کنید. در صورتیکه در زمان انتقال خطای تایم اوت داشتید از کد زیر استفاده کنید.
<!doctype html>
<html lang=”en”>
<head>
<meta charset=”UTF-8″>
<title>ROKA Transload</title>
</head>
<body >
<a href=””></a>
<br>
<?php
$source = ‘http://example.com/old-site.tar.gz’;
$fh = fopen( basename( $source ), ‘w’ );
$ch = curl_init( $source );
curl_setopt( $ch, CURLOPT_FILE, $fh );
curl_exec( $ch );
curl_close( $ch );
fclose( $fh );
echo ‘انجام شد’;
?>
</body>
</html>
کد استفاده شده در این مقاله یک نمونه کوچک از کاربردهای PHP است، اگر به برنامه نویسی علاقه دارید، در دوره PHP به صورت عملی و پروژه محور این زبان برنامه نویسی را یاد بگیرید.
توجه: اگر قصد خرید هاست وردپرس دارید هاست وردپرس راست چین یک سرویس میزبانی وب باکیفیت برای سایت های با سیستم مدیریت محتوای وردپرس و بهینه شده با محصولات راست چین است، هاست وردپرس راست چین با پشتیبانی عالی بهترین انتخاب برای سایت شماست.
آموزش عالی بود. با این روش تونستم یک فایل ۳۱ گیگابایتی را منتقل کنم. فقط نکتهش اینه که باید max_input_time و max_execution_time را در تنظیمات کنترل پنل روی ۶۰۰ ثانیه قرار بدید.
این فایل در مدت کمتر از دو دقیقه منتقل شد.