File Handling

در PHP می‌تونیم با فایل‌ها کار کنیم:

  • ایجاد فایل

  • باز کردن فایل

  • خواندن از فایل

  • نوشتن در فایل

  • بستن فایل

برای این کار از توابع داخلی PHP استفاده می‌کنیم.

🔹 باز کردن فایل با ()fopen

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

fopen(filename, mode);
  • filename → نام فایل

  • mode → حالت باز کردن (خواندن، نوشتن و ...)

حالت‌های متداول:

  • "r" → فقط خواندن (فایل باید وجود داشته باشد)

  • "w" → فقط نوشتن (اگر فایل وجود نداشته باشد ساخته می‌شود و اگر وجود داشته باشد پاک می‌شود)

  • "a" → فقط نوشتن (اگر فایل وجود نداشته باشد ساخته می‌شود و نوشته‌ها به انتهای فایل اضافه می‌شوند)

  • "x" → فقط نوشتن (اگر فایل وجود داشته باشد خطا می‌دهد)

  • "r+" → خواندن و نوشتن (فایل باید وجود داشته باشد)

  • "w+" → خواندن و نوشتن (فایل ساخته می‌شود یا پاک می‌شود)

  • "a+" → خواندن و نوشتن (فایل ساخته می‌شود و داده‌ها به انتهای آن اضافه می‌شوند)

🔹 مثال: باز کردن فایل

<?php $myfile = fopen("test.txt", "r") or die("Unable to open file!"); echo fread($myfile, filesize("test.txt")); fclose($myfile); ?>

📌 توضیح:

  • ()fopen فایل رو باز می‌کنه.

  • ()fread محتوای فایل رو می‌خونه.

  • ()fclose فایل رو می‌بنده.

🔹 خواندن خط به خط فایل

<?php $myfile = fopen("test.txt", "r") or die("Unable to open file!"); while(!feof($myfile)) { echo fgets($myfile) . "<br>"; } fclose($myfile); ?>

📌 این کد فایل رو خط به خط می‌خونه تا به انتهای فایل برسه.

🔹 نوشتن در فایل

<?php $myfile = fopen("newfile.txt", "w") or die("Unable to open file!"); $txt = "Hello PHP!\n"; fwrite($myfile, $txt); $txt = "Working with files.\n"; fwrite($myfile, $txt); fclose($myfile); ?>

📌 توضیح:

  • ()fwrite متن رو داخل فایل می‌نویسه.

  • اگر فایل وجود نداشته باشه ساخته میشه.

🔹 اضافه کردن به فایل (Append)

<?php $myfile = fopen("newfile.txt", "a") or die("Unable to open file!"); $txt = "Another line.\n"; fwrite($myfile, $txt); fclose($myfile); ?>

📌 متن به انتهای فایل اضافه میشه بدون اینکه متن قبلی پاک بشه.

🔹 حذف فایل

برای حذف فایل از ()unlink استفاده می‌کنیم:

<?php if (file_exists("newfile.txt")) { unlink("newfile.txt"); echo "File deleted successfully."; } else { echo "File does not exist."; } ?>

✅ خلاصه

  • ()fopen → باز کردن فایل

  • ()fread → خواندن فایل

  • ()fgets → خواندن یک خط

  • ()fwrite → نوشتن در فایل

  • ()fclose → بستن فایل

  • ()unlink → حذف فایل