文件的基本操作:( "更多" ) fopen():文件打開 fopen()函數的參數是目標文件的路徑和文件的讀寫模式;同時fopen函數也會在打開文件時候發現沒有文件會自動創建一個文件但是模式必須是讀寫或寫入的模式 fread():文件讀取 fread()函數的參數是需要讀取的文件和文件讀取的最大字 ...
文件的基本操作:(更多)
fopen():文件打開
$file = fopen("file.txt","r+");
fopen()函數的參數是目標文件的路徑和文件的讀寫模式;同時fopen函數也會在打開文件時候發現沒有文件會自動創建一個文件但是模式必須是讀寫或寫入的模式
fread():文件讀取
fread($file,filesize("file.txt"));
fread()函數的參數是需要讀取的文件和文件讀取的最大位元組數
fgets():讀取單行文件
fgets($file);
讀取文件中的單行文字,沒讀取一次就會將文件指針指向下一行的首部
fgetc():讀取單個字元
fgetc($file);
fgetc()函數將會逐個字元的讀取內容輸出;常見的是結合while迴圈輸出,利用EOF檢查函數feof()來控制迴圈
fclose():文件關閉
fclose($file);
文件一旦被打開在原則上一定要在使用後關閉它
fopen()函數打開的文件賦值給一個變數file,相當於file就是文件的地址指針,fread()函數依據file的地址指針可以找到自己需要讀取的文件(同理,在fread()函數中可以直接使用fopen()函數,直接打開文件,告訴fread()文件地址,然後函數執行自己的人物)
PHP文件檢查(EOF):
feof():檢查是否達到文件尾部
feof($file);
feof()函數的主要功能是檢查文件中的指針是否到達文件末尾,可以藉此來解決未知大小的文件讀寫防止越界的問題
fwrite():寫入文件
<?php
$file = fopen("/File.txt","w");// w:文件寫入模式;如果沒有該文件就會自動創建文件
$txt = "Chinawangyuyang\r\nGMAIL.com";//以String類寫入,並運用轉義轉義字元實現簡單排版
fwrite($file, $txt);//參數:寫入路徑,寫入的內容
fclose($file);
?>
fwrite()函數參數主要是寫入的文件地址和需要寫入的字元串或字元類型的變數
註意: 文件寫入和文件的操作(讀寫)模式有著非常重要的關係;fwrite()函數只負責向文件寫入數據,而fopen()函數每次打開文件的時候就會將指針指向文件首部或是直接將新的數據覆蓋原有的所有數據或部分數據;所以我們在對現有文件不覆蓋進行文件數據增刪的時候需要註意fopen()函數選擇的讀寫模式為追加或者是指定文件指針的位置,從指針位置開始寫入數據信息;
其它文件函數:
file_exists():文件是否存在
file_exists("file.txt");
(不打開文件)檢測文件是否存在;參數是文件的相對或絕對地址路徑;返回布爾值
filesize():文件位元組大小
filesize("file.txt");
檢測文件的位元組大小,參數是文件的相對或絕對地址路徑;
unlink():刪除文件
unlink("file.txt");
刪除指定的文件;參數是文件的相對或絕對地址路徑;返回布爾值
文件指針定位:
rewind():首部
- 將文件指針複位到文件的首部
ftell():返回位置
- 將文件指針的當前位置返回
fseek():指定位置
將指針移動到指定的位置
int fseek( resource fp , int offset [, int whence]);
fseek()函數主要的功能是將文件指針fp從whence位置移動offset位元組;(whence預設是文件首部 [SEEK_SET];當前指針位置[SEEK_CUR];文件尾部 [SEEK_END])
flock():文件鎖定
bool flock( resource fp , int operation [, int &wouldblock]);
*通過flock()函數來完成對文件鎖定;主要參數有:指定文件指針,以及一個需要鎖定類型的常數;返回布爾值(是否成功鎖定文件);