文件操作
(1)打開文件
1 <?php 2
3 $file=fopen("test.txt", "w+");//操作,以w+ 讀與寫的方式進行,文件不存在則自己創建
4 fclose($file);//操作完文檔最好使用該函數去關閉文件
5
6 ?>
fread(“打開的文件”,”讀取文件大小”) //讀取文件
fgets(文件名)用於從文件中讀取單行數據內容
fgetc(文件名)用於從文件中讀取單個字符
feof()檢測是否到達文件末尾
打開方式:
r 只以讀的方式去打開
r+ 讀和寫
w 只以寫的方式打開,如果文件不存在,則創建文件
w+ 讀和寫,如果不存在,則創建
a 文件末尾追加,如果文件不存在,則創建文件
a+ 讀和追加,如文件不存在,則創建文件
x 只寫 ,創建新文件,如文件已存在,返回false和錯誤
x+ 讀寫,創建新文件,如文件已存在,返回false和錯誤
(2)打開文件並進行讀
1 <?php 2 $fp=fopen("test.txt", "r");//只以讀的方式打開test.txt
3 if($fp){ 4 while (!feof($fp)) { 5 $content=fgets($fp);//直到文檔末尾,全讀
6 echo $content;//打印讀的內容
7 } 8 } 9 fclose($fp);//關閉文件
10
11 ?>
(3)打開文件進行讀取文件內容
1 <?php 2 $file=@fopen("test.txt", "r"); 3 echo filesize("test.txt")."<br>"; 4
5 $file_contents1=fread($file, filesize("test.txt")); 6 echo $file_contents1; 7 fclose($file); 8
9 ?>
注:瀏覽器均沒有以換行的方式顯示
(4)寫.txt文件
1 <?php 2
3 $myfile = fopen("newfile.txt", "a+") or die("Unable to open file!");//w默認情況下會覆蓋當前寫的,a+(+多了可讀,a 在追加)
4 $txt = "Hello World!\n";//要寫入的內容 5 fwrite($myfile, $txt); 6 fclose($myfile);//關閉文件 7
8 ?>
創建一個newfile.txt 然后寫入內容
(5)同上一個,將寫入文件刪除
1 $file="newfile.txt"; 2 unlink($file);//刪除文件
再運行一遍:
newfile.txt直接就被刪除了
(6)讀txt文件
1 <?php 2
3 $filename="./test.txt";//讀當前目錄下的test.txt文檔 4 readfile($filename); 5
6
7 ?>
(7)讀圖像文件
1 <?php 2
3 $filename="./1.jpg"; 4 header("content-type:image/png"); 5 readfile($filename); 6
7
8 ?>
(8)以圖像的形式顯示文件
1 <?php 2 $filename="./test.txt"; 3 echo basename($filename); 4 header("content-type:image/png");//將文檔以圖像編碼 5 readfile($filename); 6
7 ?>
由於test.txt不是圖片,因此不會顯示其內容
(8)下載文件
1 <?php 2 $filenameurl="test.txt"; 3 header("content-type:application/octet-stream");// 4 header("content-Transfer-Encoding:utf-8"); 5 header("content-dispostion:attachment;filename=\"".basename($filenameurl)."\""); 6 readfile($filename); 7
8 ?>