مدیریت فایل ها در php

  • آپدیت شده در تاریخ

مدیریت فایل ها در php

با استفاده از مکانیزم مدیریت فایل ها در php , می توانیم یک فایل  را به عنوان منبع دریافت و عملیاتی بر روی آن انجام دهیم .

Php چندین تابع از پیش ساخته شده (in-built) برای کار با فایل ها به ما ارایه می دهد , بعضی از این توابع عبارتند از fopen() , file_exists() , file() , file_get_contents() و غیره … .

برای آشنایی کامل با تابع file_get_contents در php کلیک کنید

بعضی از عملیاتی که می توانیم بر روی فایل ها انجام دهیم , بصورت زیر لیست شده اند.

  • باز کردن فایل
  • خواندن , حذف و نوشتن داده های جدید و اضافه کردن به آن
  • بستن فایل

باز کردن فایل

برای بازکردن یک فایل با مکانیزم مدیریت فایل ها در php , ما باید اسم فایل و mod یا همان حالت مورد نظر را ست کنیم . mod ها به ما دسترسی محدودی به انجام عملیات بر روی فایل می دهند .

Mod های عملیات

در مدیریت فایل ها در php , چها تا از حالت های زیر برای کار با فایل ها وجود دارد .

  • {r , r+} – برای خواندن فایلی که از قبل وجود دارد (read)
  • {w , w+} – تغییر کل محتوای فایل با حذف کردن محتوای قبلی  (write)
  • {a , a+} – افزودن (append) محتوای جدید با وجود محتوای قبلی
  • {x , x+} – ساخت فایل جدید و کار کردن با آن

مدیریت فایل ها در php

خواندن فایلی که از قبل وجود دارد

در php , دوتا از mod های زیر برای مدیریت فایل ها در php و خواندن فایل از قبل ساخته شده استفاده می شود .

r برای فقط خواندنی (read-only) و r+ برای خواندن و نوشتن (read-write) استفاده می شود.

با استفاده از تابع fopen() , می توانیم یک فایل را با اسم و mod مورد نظر باز کنیم . برای مثال ,

نکته : باید مطمین باشیم فایل از قبل وجود دارد , وگرنه با خطای warning زیر مواجه می شویم .

تغییر کل محتوای فایل

برای انجلم عملیات write , دو انتخاب  برای نوع mod فایل باز شده داریم . که به صورت زیر است.

W برای فقط نوشتنی (write-only) و w+ برای خواندن و نوشتن (read-write) استفاده می شود.

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

برای مثال,

افزودن محتوا به فایل

در این عملیات , محتوای قبلی فایل پاک نخواهد شد . در عوض , محتوای جدید بعد از محتوای قبلی فایل اضافه می شود .

برای این نوع عملیات , این حالت ها را داریم .

a برای فقط نوشتنی (write-only) و a+ برای نوشتن و خواندن استفاده می شود .

کد این مثال از مدیریت فایلها در php نیز همانند مثال قبل خواهد بود بجز اینکه حالت آن تغییر می کند.

نکته : در php , حالت نوشتن و افزودن فایل از قبل ساخته شده را باز می کنند , در صورتی که فایل از قبل وجود نداشته باشد , یک فایل جدید برای انجام عملیات مورد نظر می سازد.

ساخت فایل جدید

دو mod برای نوشتن در یک فایل جدید وجود دارد

x برای فقط نوشتن (write-only) و x+ برای خواندن و نوشتن (read-write) استفاده می شود . برای مثال ,

احتیاط : اگر فایل از قبل وحود داشته باشد , ادامه اجرای اسکریپت متوقف خواهد شد .

برای آشنایی با انواع خطاها در php کلیک کنید . همانطور که متوجه شدید در بسیاری مقالات توصیه می کنم حتما با انواع خطا ها در php و نوع آنها و نحوه رفع آنها به طور کامل آشنا بشید . چونکه امکان ندارد چندین خط کد بنویسید و هیچ گاه به خطا برنخورید . این آموزش به شما کمک می کند که در مرحله debugging به سرعت مشکل را پیدا کرده و آن را رفع کنید .

بستن فایل

بعد از انجام تمام عملیات بالا بر روی فایل که به عنوان مدیریت فایل ها در php یا (php file handling) شناخته می شود , نیاز داریم که با استفاده از تابع fclose() , فایل مورد نظر را ببندیم . به تابع fclose() باید $filepointer که همان تابع fopen که شامل نام و حالت فایل بود را پاس بدیم . این کار باعث آزاد شدن فضای مموری سیستم می شود و اگر برای فایل های کمی حجیم تر این کار را انجام ندهید ممکن است برای سیشن شما خطاهای مربوط به memory ارسال و در صفحه مرورگر چاپ شود و ببینید

خب امیدوارم از آموزش مدیریت فایل ها در php لذت برده باشید . کاربرد این آموزش ساخت فایل منیجر های هاستینگ , یا مدیریت فایل برای آپلودر و … کاربردهای مختلف می باشد

هر گونه مشکلی در پیاده سازی کدها داشتید ، از قسمت نظرات اقدام کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دوره های آموزشی