fopen() (fopen)
تابع fopen یک «جریان (Stream)» را باز می کند. جریان یعنی راهی برای خواندن یا نوشتن داده. اینجا تمرکز ما روی باز کردن فایل با fopen است؛ مثل باز کردن دفتر مشق برای خواندن یا نوشتن.
تعریف ساده، سینتکس و حالت ها
سینتکس: fopen(filename, mode, include_path, context). پارامتر mode نوع دسترسی را تعیین می کند. مثلاً r فقط خواندن است. همچنین می توانی از b یا t برای حالت باینری یا ترجمه انتهای خط استفاده کنی.
نکته: انتهای خط در سیستم ها فرق دارد. یونیکس \n، ویندوز \n، مک قدیمی استفاده می کند. در ویندوز، پرچم t \n را به \n تبدیل می کند.
نمونه: خواندن فایل تا رسیدن به انتهای فایل
<?php
$file = fopen("test.txt", "r");
while (!feof($file)) {
$line = fgets($file);
echo $line . "<br>";
}
fclose($file);
?>
گام های عملی
- حالت مناسب را انتخاب کن. مثال:
rیاw. - فایل را با
fopenباز کن. - بخوان یا بنویس. سپس
fcloseرا فراخوانی کن.
هشدار: حالت های w و w+ فایل را خالی می کنند. با احتیاط استفاده کن.
برای قفل گذاری هنگام نوشتن، به flock سر بزن. همچنین اندازه فایل را با filesize ببین. این ها کنار fopen عالی کار می کنند.
جمع بندی سریع
- fopen برای باز کردن فایل یا URL است.
- حالت ها رفتار دسترسی را تعیین می کنند.
- خط پایان در سیستم ها متفاوت است.
- بعد از کار، همیشه فایل را ببند.