fopen(string filename,string mode);//返回一個資源對象,存儲當前文件資源
解釋php
filename:文件的文件名及其所在路徑, mode:文件的打開模式,mode的值能夠以下表所示。
model的值 | 說明 |
---|---|
r | 只讀方式打開,將文件指針指向文件頭 |
r+ | 讀寫方式打開,將文件指針指向文件頭 |
w | 寫入方式打開,若是文件存在會將文件清空,若是文件不存在則建立 |
w+ | 讀寫方式,若是文件存在會將文件清空,若是文件不存在則建立 |
a | 寫入方式打開,若是文件存在則追加,若是文件不存在則建立 |
a+ | 讀寫方式打開,若是文件存在則追加,若是文件不存在則建立 |
x | 寫入方式打開,若是文件存在則打開失敗,若是文件不存在則建立 |
x+ | 讀寫方式打開,若是文件存在則打開失敗,若是文件不存在則建立 |
void fclose(file_resource);
解釋數組
file_resource:指使用fopen()函數打開文件時返回的資源對象。例子 關閉文件操做服務器
string fgetc($file_resource);//讀取文件中的一個字符,返回文件中的一個字符並將指針移動到下一個字符
解釋app
file_resource:指使用fopen()函數打開文件時返回的資源對象。例子 使用fgetc()函數讀取文件函數
string fgets($file_resource);//讀取文件中的一行,返回文件中的一行並將指針移動到下一行
解釋指針
file_resource:指使用fopen()函數打開文件時返回的資源對象。例子 使用fgets()函數讀取文件code
string fread($file_resource,int length);//讀取文件中的任意長字符,返回文件中的一行並將指針移動到下一行
解釋對象
file_resource:指使用fopen()函數打開文件時返回的資源對象。 length:要讀取的字符長度,若是length長度超過文件的長度,文件的所有內容將被返回例子 使用fread()函數讀取文件資源
<?php $file = fopen("test\\file.txt",'r');//以只讀的方式打開test文件夾下的file.txt文件 echo fread($file,20);//輸出文件中的前20個字符 fclose($file);//關閉文件 ?>應用字符串
fread()函數一般結合filesize()函數來獲取文件的所有內容。
int filesize(string filename);//讀取文件大小的字節數
filename:文件名及其所在路徑
例子:返回文件的全部內容
<?php $filename = "test\\file.txt";//文件名 $file = fopen($filename,'r');//以只讀的方式打開test文件夾下的file.txt文件 filesize = filesize($file);//獲取文件內容的字符長度 echo fread($file,filesize);//輸出文件中的所有內容 fclose($file);//關閉文件 ?>
int fwrite(file_resource,string str,[,int length]);
解釋
file_resource:指使用fopen()函數打開文件時返回的資源對象。 str:要寫入文件的字符串 length:可選參數,指定length則只將str的前length長度寫入文件例子 使用fwrite()函數寫入文件
bool unlink(string filename);//刪除文件
解釋
filename:文件名及其所在路徑。例子 使用unlink()函數刪除文件
bool copy(string filename1,string filename2);//複製文件,將filename1文件複製到filename2
解釋
filename1:源文件的文件名及其所在路徑。 filename1:目標文件的文件名及其所在路徑。例子 使用copy()函數複製文件
bool move_upload_file(string filename1,string filename2);
解釋
filename1:客戶端源文件的文件名及其所在路徑。 filename1:服務器上目標文件的文件名及其所在路徑。例子 文件的上傳
拓展 PHP中的全局變量$_FILES,它是一個二維的全局變量數組。數組中每一行由5個元素組成
1.$_FILES[]['name']:客戶端源文件名
2.$_FILES[]['size']:上傳文件的字節數
3.$_FILES[]['type']:上傳文件的類型
4.$_FILES[]['tmp_name']:上傳文件後在服務器上的臨時存儲文件名
5.$_FILES[]['error']:上傳文件的錯誤代碼,若是爲0表示沒有錯誤發生
例子 文件的下載,對downloads文件中的文件進行瀏覽和下載的功能
<?php $res = 'downloads/'; if(!isset($_GET['file'])){//若是參數中沒有指定文件名,則讀取文件列表 $dir_res = opendir($dir);//打開downloads文件夾 echo 「<h1>文件下載</h1>」; while($filen = readdir($dir_res)){//讀取輸出文件名 if($filen != "." and $filen != ".." ){//過濾當前目錄和上一級目錄不顯示 echo "<a href='?file=".$filen."'>".$filen."</a><br>"; } closedir($dir_res); } }else{//存在文件 $file_name = $dir.$_GET['file'];//獲取當前文件名 if($fh = fopen($file_name,'r')){//打開文件 $fsize = filesize[$file_name];//得到文件大小 $path_parts = pathinfo($file_name);//獲取文件路徑信息 header(「Content-type:application/octet-stream」);//定義文件類型 header(「Content-Disposition:filename=\"".$path_parts['basename']."\"」);//定義文件名 header(「Content-length:」.$fsize);//定義文件大小 while(!feof($fh)){//讀取文件並輸出 $buffer = fread($fh,2048); echo $buffer; } } } ?>