1.首先來介紹一下fopen()函數
下面我們給出了一個直接開啟本地檔案的代碼demo,必要的地方我們都已經加上了注釋:
代碼如下 |
複製代碼 |
//直接開啟一個本地檔案的執行個體代碼 <?php //假若我們本地的檔案是一個名為xmlas.txt的文本 $filedemo = "xmlas.txt"; $fpdemo = fopen($filedemo,"r"); if ($fpdemo){ while(!feof($fpdemo)){ //1000讀取的字元數 $datademo = fread($fpdemo, 1000); } fclose($fpdemo); } echo $datademo; ?> |
2.使用file_get_contents() 函數將整個檔案在一個字串中輸出:
假若我們的xmlas.txt文字檔中有這樣一句話:現在的電影越來越沒激情,想要全部高潮請看日本愛情
動作片!
那麼我們file_get_contents() 函數的執行個體代碼便如下:
代碼如下 |
複製代碼 |
<?php echo file_get_contents("xmlas.txt"); //此時輸出的內容便為xmlas.txt中的內容: //現在的電影越來越沒激情,想要全部高潮請看日本愛情動作片! ?> |
3.如何讀取本地的一個檔案夾而不是一個單獨檔案:
請看下面的執行個體代碼,在執行個體中我們將讀取一個名為xmlas的檔案夾:
代碼如下 |
複製代碼 |
<?php $dirdemo = opendir('/xmlas'); while(($filedemo = readdir($dirdemo))!=false){ if ($filedemo!="." && $filedemo!="..") { $nsdemo = explode('.', $filedemo); echo $nsdemo[0]; } } closedir($dirdemo); ?>
|
4.我們還可以利用fopen來寫檔案
代碼如下 |
複製代碼 |
/** *用fopen寫入檔案 *@param string $filename *@param string $contents *@return boolean */ function wirte($filename,&$contents) { $fp=fopen($filename,"wb"); if($fp) { flock($fp,LOCK_EX);//同一時間鎖定檔案,只能一個人操作 fwrite($fp,$contents); flock($fp,LOCK_UN);//儲存資料握進行解鎖檔案並儲存 fclose($fp); return true; }else { return false; } } |
這樣我只要利用fopen配合fwrite就可以實現檔案讀寫了。
注意:l開啟檔案
在開啟檔案檔案之前,我們需要知道這個檔案的路徑,以及此檔案是否存在。
用$_SERVER[“DOCUMENT_ROOT”]內建全域變數,來獲得網站的相對路徑。如下:
代碼如下 |
複製代碼 |
$root = $_SERVER[“DOCUMENT_ROOT”];
|
在用函數file_exists()來檢測檔案是否存在。如下:
代碼如下 |
複製代碼 |
If(!file_exists("$root/order.txt")){echo ‘檔案不存在’;} |
這樣可能更合理更實用哦。