• تهران -خیابان شریعتی - بالاتر از سه راه ملک - روبروی آتش نشانی - آرتارسانه
  • تلفن تماس: 02191303424

آموزش برنامه نویسی PHP-جلسه دوازدهم

 

PHP File Handling

مدیریت فایل بخش مهمی از برنامه وب است. شما اغلب نیاز به بازکردن و پردازش یک فایل برای کارهای مختلف دارید.

php چندین فانکشن برای ایجاد، خواندن، آپلود و ویرایش فایل‌ها دارد.

PHP readfile() Function

readfile() یک فایل را می‌خواند. و تعداد کاراکترها را نیز برمی‌گرداند.

<?php
echo readfile(“webdictionary.txt”);
?>

مثلا یک فایل متنی به نام webdictionary.txt داریم برای بازکردن و خواندش از تابع readfile() استفاده می‌شود. تو هر صفحه‌ای میشه با این تابع محتوای آن فایل را بازکرد و خواند.

PHP Open File – fopen()

یک روش بهتر برای بازکردن فایل‌ها با تابع fopen() است این تابع گزینه‌های بیشتری را نسبت به تابع readfile() در اختیار شما قرار می‌دهد. پارامتر اول fopen() حاوی نام فایلی است که باید باز شود و پارامتر دوم مشخص می‌کند که فایل در چه حالتی باید باز شود.

 

حالت‌های مختلفی برای بازکردن فایل وجود دارد در ادامه انواع حالت‌ها را می‌آوریم.

r : یک فایل فقط برای خواندن باز کنید. نشانگر فایل از ابتدای فایل شروع می شود

w : یک فایل فقط برای نوشتن باز کنید. محتویات فایل را پاک می کند یا در صورت عدم وجود فایل جدیدی ایجاد می کند. نشانگر فایل از ابتدای فایل شروع می شود

a : باز کردن یک فایل فقط برای نوشتن. داده های موجود در فایل حفظ می شود. نشانگر فایل از انتهای فایل شروع می شود. در صورت عدم وجود فایل، فایل جدیدی ایجاد می کند

x : یک فایل جدید فقط برای نوشتن ایجاد می کند. FALSE را برمی‌گرداند و اگر فایل از قبل وجود داشته باشد، یک خطا را نشان می‌دهد

r+ : یک فایل برای خواندن/نوشتن باز کنید. نشانگر فایل از ابتدای فایل شروع می شود

w+ : یک فایل برای خواندن/نوشتن باز کنید. محتویات فایل را پاک می کند یا در صورت عدم وجود فایل جدیدی ایجاد می کند. نشانگر فایل از ابتدای فایل شروع می شود

a+ : یک فایل را برای خواندن/نوشتن باز کنید. داده های موجود در فایل حفظ می شود. نشانگر فایل از انتهای فایل شروع می شود. در صورت عدم وجود فایل، فایل جدیدی ایجاد می کند

x+ : یک فایل جدید برای خواندن/نوشتن ایجاد می کند. FALSE را برمی‌گرداند و اگر فایل از قبل وجود داشته باشد، یک خطا را نشان می‌دهد

 

PHP Read File – fread()

تابع fread() از یک فایل باز خوانده می‌شود. پارامتر اول تابع حاوی نام فایلی است که باید از آن خوانده شود و پارامتر دوم حداکثر تعداد بایت‌های خواندنی را مشخص می‌کند.

 

fread($myfile,filesize(“webdictionary.txt”));

 

PHP Close File – fclose()

با این تابع برنامه را می‌بندیم تا منابع اضافی سرور را اشغال نکند.

Fclose($myfile)

 

PHP Read Single Line – fgets()

تابع fgets() برای خواندن یک خط از یک فایل استفاده می‌شود.

<?php
$myfile = fopen(“webdictionary.txt”, “r”) or die(“Unable to open file!”);
echo fgets($myfile);
fclose($myfile);
?<

PHP Check End-Of-File – feof()

تابع feof() بررسی می‌کند که آیا به انتهای فایل (eof) رسیده است یا خیر. تابع feof() برای حلقه زدن از طریق داده‌هایی با طول ناشناخته مفید است.

<?php
$myfile = fopen(“webdictionary.txt”, “r”) or die(“Unable to open file!”);
// Output one line until end-of-file
while(!feof($myfile)) {
  echo fgets($myfile) . “<br>”;
}
fclose($myfile);
?>

PHP Create File – fopen()

تابع fopen() نیز برای ایجاد فایل استفاده می‌شود. یعنی یک فایل با استفاده از همان تابعی که برای بازکردن فایل‌ها استفاده می‌شود ایجاد می‌شود. اگر از fopen() روی فایلی استفاده کنید که وجود ندارد با توجه به اینکه فایل برای نوشتن (w) یا (a) باز شده است آن را ایجاد می‌کند.

PHP Write to File – fwrite()

تابع fwrite() برای نوشتن روی یک فایل استفاده می‌شود. پارامتر اول fwrite() شامل نام فایلی است که باید روی آن بنویسید. و پارامتر دوم حالتی است که باید نوشته شود.

<?php
$myfile = fopen(“newfile.txt”, “w”) or die(“Unable to open file!”);
$txt = “John Doe\n”;
fwrite($myfile, $txt);
$txt = “Jane Doe\n”;
fwrite($myfile, $txt);
fclose($myfile);
?>

اگر mode، w باشد متن های قبلی حذف می‌شود و رشته جدید اضافه می‌شود. ولی اگر mode، a باشد متن قبلی را حفظ می‌کند و رشته‌های جدید را اضافه می‌کند.