亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php中常用文件操作讀寫函數介紹

2024-09-04 11:48:20
字體:
來源:轉載
供稿:網友

本文章介紹了下面幾個常用的文件操作函數 file_get_contents 讀取整個文件內容 fopen 創建和打開文件 fclose 關閉文件 fgets 讀取文件一行內容 file_exists 檢查文件或目錄是否存在 file_put_contents 寫入文件 fwrite 寫入文件

用 PHP 內置函數 file_exists 可以檢查某個文件或目錄是否存在.如果文件或目錄存在,file_exists 函數返回 TRUE,如果不存在,則返回 FALSE.

下面是一個簡單的檢查文件是否存在的實例代碼:

實例代碼如下:

  1. <html> 
  2. <body> 
  3. ?<?php 
  4. $filename = "C:/blabla/php/hello.txt"
  5. if (file_exists($filename))   
  6. {echo "The file $filename exists."
  7. }else  { 
  8. echo "The file $filename does not exist." 
  9. ;}?> 
  10. </body> 
  11. </html> 

如果文件存在,執行該 PHP 文件的顯示結果是:

The file C:blablaphphello.txt exists.

如果文件不存在,執行該 PHP 文件的顯示結果是:

The file C:blablaphphello.txt does not exist.

你也可以用file_exists 函數測試某個目錄是否存在,示例代碼如下:

實例代碼如下:

  1. if (file_exists("C:/blabla/php")) 
  2.   {echo "yes";} 
  3. else 
  4.   {echo "no";} 

用 PHP 內置函數 file_get_contents 可以讀取整個文件內容.

file_get_contents 函數讀取整個文件,返回一個字符串.file_get_contents 最簡單的寫法如下:

file_get_contents(filepath)

舉個例子,你有一個 .txt 文件,文件的路徑為:

C:blablaphphello.txt

下面的 php 代碼用 file_get_contents 函數讀取該文件,并輸出該文件內容:

實例代碼如下:

  1. <html> 
  2. <body> 
  3. <?php 
  4. $f = file_get_contents("C:/blabla/php/hello.txt"); 
  5. echo $f;?> 
  6. </body> 
  7. </html> 

注意:由于文件路徑含有反斜杠,而在 PHP 字符串里,反斜杠需要轉義,要用兩個反斜杠表示.(如果你忘記了 PHP 某些特殊字符的轉義,請翻閱前面所講的 PHP 字符串.)

file_get_contents 函數的返回值是所讀取的文件內容字符串,如果出錯,返回 FALSE.

使用 PHP 內置函數 fopen,可以打開一個文件.

打開文件

fopen 最簡單語法如下:

fopen(filepath,mode)

下面是打開一個文件的 PHP 代碼示例:

實例代碼如下:

  1. <?php 
  2. $f = fopen("c:/data/info.txt""r"); 
  3. ?>  

其中,c:/data/info.txt 是文件路徑,r 表示打開文件的模式(mode) 為只讀 (read only) 模式.

fopen 函數打開文件的模式有以下幾種:

模式 (mode) 說明 

r 只讀,文件指針在文件開始處. 

r+ 讀和寫,文件指針在文件開始處. 

w 只寫,文件指針在文件開始處,將文件長度截成0.

如果文件不存在,創建文件.

w+ 讀和寫,文件指針在文件開始處,將文件長度截成0.

如果文件不存在,創建文件.

a 只寫,文件指針在文件末尾處.

如果文件不存在,創建文件.

a+ 讀和寫,文件指針在文件末尾處.

如果文件不存在,創建文件.

x 只寫,文件指針在文件開始處.

如果文件已經存在,fopen () 函數返回 FALSE 并產生一個E_WARNING 級別的錯誤.

如果文件不存在,創建文件.

x+ 讀和寫,文件指針在文件開始處.

如果文件已經存在,fopen () 函數返回 FALSE 并產生一個E_WARNING 級別的錯誤.

如果文件不存在,創建文件.

如果成功打開文件,fopen 函數的返回值是一個文件指針資源 (a file pointer resource),如果出錯,返回 FALSE.

創建文件

選擇 fopen 函數參數 mode 的適當的值 ,你可以用 fopen 創建一個文件,比如:

實例代碼如下:

  1. <?php 
  2. $f = fopen("c:/data/101.txt""w"); 
  3. $f = fopen("c:/data/102.txt""w+"); 
  4. $f = fopen("c:/data/103.txt""a"); 
  5. $f = fopen("c:/data/104.txt""a+"); 
  6. $f = fopen("c:/data/105.txt""x"); 
  7. $f = fopen("c:/data/106.txt""x+"); 
  8. ?> 

用 PHP 內置函數 fgets 可以讀取文件的一行內容.

fgets讀取文件一行內容的語法是:

fgets(filepointer)

下面我們舉個例子講述如何一行行讀取一個文件.

假設我們有一個 sites.txt 文件,該文件有三行,內容如下:

woyouxian.comblabla.cngoogle.com

sites.txt 的文件路徑是:

C:blablaphpsites.txt

我們用 PHP 一行行讀取文件內容,PHP代碼如下:

實例代碼如下:

  1. <html> 
  2. <body> 
  3. <?php 
  4. $ffopen("C:/blabla/php/sites.txt","r"); 
  5. while (!feof($f)){   
  6. $line = fgets($f);   
  7. echo "site: ",$line,"<br />"
  8. fclose($f);?> 
  9. </body> 
  10. </html> 

執行該 PHP 文件,返回的顯示結果是:

site: woyouxian.comsite: blabla.cnsite: google.com

該 PHP 代碼的第一行是打開文件,最后一行是關閉一個文件.當中的 while 循環語句表示,當文件沒有結束,就讀取一行,循環執行,直到文件指針到文章末尾為止.

feof 函數是PHP 的一個內置函數,用來測試文件指針是否已經到了文件末尾.如果是返回 TRUE,如果不是,返回 FALSE.eof 的英文意思就是 end of file,很容易記.

正常情況下,fgets 函數的返回值是一個字符串,如果出錯,返回 FALSE.

講述使用 PHP 內置函數 fclose 關閉一個文件.

fclose 函數語法如下:

fclose(filepointer)

如果成功,fclose 函數返回 TRUE,如果失敗,fclose 函數返回 FALSE.

下面是一個 fclose 函數的 PHP 代碼示例:

實例代碼如下:

  1. <?php 
  2. $f = fopen("c:/data/info.txt""r"); 
  3. fclose($f); 
  4. ?> 

這一章節我們講述如何用 fopen, fwrite, fclose 來實現打開文件、寫入文件和保存關閉文件的這一系列的操作.重點講述 fwrite 函數.

PHP 內置函數 fwrite 用于寫入文件.

fwrite 函數的常用語法為:

fwrite(handle,string)

其中,參數 handle 表示文件指針資源 (通常由 fopen 函數創建),string 表示要寫入的內容.

下面一個PHP 代碼示例演示如何創建一個新文件,并寫入內容,然后保存并關閉文件:

實例代碼如下:

  1. <html><body><?php 
  2. $ffopen("C:/blabla/php/write.txt","w"); 
  3. fwrite($f,"It is awesome.");fclose($f);echo "done"
  4. ?> 
  5. </body> 
  6. </html> 

執行該 PHP 文件后,會創建一個路徑為 C:blablaphpwrite.txt 的文件,文件的內容是It is awesome..

如果你想在現有文件上再追加內容,你只要修改 fopen 的 參數 mode 值即可,如下:

$f= fopen("C:/blabla/php/write.txt","a");

有關 fopen 函數的參數 mode 值,詳見 fopen.

fwrite 函數返回寫入文件的字節數 (number of bytes) ,如果出錯,返回 FALSE.

PHP 內置函數 file_put_contents 用于寫入文件.

file_put_contents 函數最簡單的寫法,可以只用兩個參數,一個是文件路徑,一個是要寫入的內容,語法如下:

file_put_contents(filepath,data)

如果文件不存在,file_put_contents 函數會自動創建文件;如果文件已存在,原有文件被重寫.

你可以利用 file_put_contents 函數創建并寫入一個新文件,或者重寫一個原有文件.

下面是一個使用 file_put_contents 函數的 PHP 代碼示例:

實例代碼如下:

  1. <html><body> 
  2. <?php$path ="C:/blabla/filesys/one.txt"
  3. $content = "one for all"
  4. file_put_contents($path,$content); 
  5. if (file_exists($path))  
  6.  {echo "ok";}else  {echo "ng";} 
  7. ?></body></html> 

該 PHP 代碼示例會創建一個路徑為 C:blablafilesysone.txt 的文件,該文件的內容是 one for all .

如果你想在一個已有文件上追加內容,你也可以使用file_put_contents 函數,只需要加一個參數即可.

file_put_contents(filepath,data,flags)

當 flags 的值為 FILE_APPEND 時,表示在已有文件上追加內容.

比如我們要在上面示例的C:blablafilesysone.txt 文件上追加內容,我們可以這樣寫:

實例代碼如下:

  1. <html><body><?php 
  2. $path ="C:/blabla/filesys/one.txt"
  3. $content = " all for one"
  4. file_put_contents($path,$content,FILE_APPEND); 
  5. if (file_exists($path))   
  6. {echo "ok";}else  {echo "ng";} 
  7. ?></body> 
  8. </html> 

執行該 PHP 文件之后,我們再看 C:blablafilesysone.txt 文件,發現文件內容增加了,變成了:

one for all all for one

file_put_contents 函數返回寫入文件的字節數 (number of bytes) ,如果出錯,返回 FALSE.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人中心免费视频| 久久久免费电影| 欧美日韩在线视频观看| 久久久久久亚洲精品中文字幕| 亚洲高清免费观看高清完整版| 亚洲免费视频一区二区| 91精品国产色综合久久不卡98口| 久久精品国产亚洲精品2020| 国产一区二区av| 国产精品999| 久久视频精品在线| 欧美黄色小视频| 久久精品99久久久香蕉| 69av在线播放| 中文字幕久精品免费视频| 人妖精品videosex性欧美| 欧美在线观看一区二区三区| 日本亚洲欧美成人| 国产精品美女999| 国产精品久久国产精品99gif| 国产欧美日韩免费| 国语自产偷拍精品视频偷| 国产成人精彩在线视频九色| 在线观看中文字幕亚洲| 热re99久久精品国产66热| 亚洲小视频在线观看| 青草青草久热精品视频在线网站| 成人黄色免费看| 精品久久久久久久久久久| 久久久精品国产一区二区| 日韩中文字幕国产| 国产精品免费一区豆花| 欧美视频在线视频| 欧美大肥婆大肥bbbbb| 久久综合国产精品台湾中文娱乐网| 91久久久久久久久| 亚洲午夜女主播在线直播| 精品小视频在线| 成人欧美一区二区三区黑人孕妇| 亚州精品天堂中文字幕| 中文字幕精品久久| 中文字幕精品www乱入免费视频| 97在线精品国自产拍中文| 成人黄色中文字幕| 欧美精品videossex88| 国产日韩中文字幕在线| 国产精品va在线播放我和闺蜜| 欧美日韩精品在线| 日韩h在线观看| 日韩美女av在线免费观看| 欧美又大粗又爽又黄大片视频| 久久视频中文字幕| 日韩视频在线一区| 日韩成人激情视频| 欧美色视频日本高清在线观看| 欧美激情久久久久久| 日韩在线视频网站| 日韩精品一区二区视频| 亚洲欧洲黄色网| 日韩av毛片网| 91av在线国产| 久久精品久久精品亚洲人| 伊人精品在线观看| 国内精品国产三级国产在线专| 韩日欧美一区二区| 456亚洲影院| 中文字幕亚洲一区二区三区五十路| 日韩少妇与小伙激情| 日韩性xxxx爱| 国产精品视频26uuu| 在线视频国产日韩| 91黑丝在线观看| 国产一区二区丝袜高跟鞋图片| 精品成人69xx.xyz| 久久精品国产99国产精品澳门| 亚洲人午夜色婷婷| 97色伦亚洲国产| 精品在线小视频| 亚洲精品资源在线| 欧美大片va欧美在线播放| 性色av一区二区三区红粉影视| 国产精品一区专区欧美日韩| 欧美特级www| 欧美性69xxxx肥| 日韩一区二区av| 亚洲无av在线中文字幕| 欧美巨乳在线观看| 北条麻妃一区二区三区中文字幕| 日韩av网站导航| 91av在线播放视频| 日本成人黄色片| 久久国产精品久久久久| 日韩欧美亚洲一二三区| 成人中文字幕+乱码+中文字幕| 97在线视频免费观看| 精品久久久香蕉免费精品视频| 自拍偷拍亚洲区| 国产精品嫩草影院久久久| 亚洲精品视频免费在线观看| 热re91久久精品国99热蜜臀| 美女福利精品视频| 国产亚洲激情视频在线| 中文字幕av一区中文字幕天堂| 5278欧美一区二区三区| 欧美性猛交xxxx免费看| 色爱av美腿丝袜综合粉嫩av| 亚洲娇小xxxx欧美娇小| 欧美激情一区二区三区在线视频观看| 久久夜色精品国产欧美乱| 亚洲男人天堂手机在线| 国产亚洲人成a一在线v站| 国产欧美日韩免费看aⅴ视频| 国产97人人超碰caoprom| 91网站免费看| 亚洲精品久久久久久久久久久久久| 亚洲精品资源美女情侣酒店| 久久天天躁日日躁| 日韩精品在线视频美女| 欧美日韩亚洲精品一区二区三区| 久久综合电影一区| 最近2019年好看中文字幕视频| 欧美精品第一页在线播放| 欧美成人亚洲成人日韩成人| 欧美日韩成人在线播放| 亚洲国产精品小视频| 久久艹在线视频| 亚洲japanese制服美女| 日韩在线观看你懂的| 91久久精品国产91久久性色| 国内外成人免费激情在线视频| 丝袜情趣国产精品| 日韩天堂在线视频| 日韩av在线高清| 亚洲精品乱码久久久久久金桔影视| 国产一区二区三区在线看| 亚洲二区中文字幕| 国产精品久久久久999| 高清欧美一区二区三区| 欧美精品电影在线| 日韩欧美亚洲国产一区| 78色国产精品| 国产美女搞久久| 久久久久久尹人网香蕉| 亚洲欧美日韩国产中文| 亚洲天堂av图片| 精品偷拍一区二区三区在线看| 日韩人在线观看| 中文字幕综合一区| 亚洲欧美一区二区精品久久久| 国产精品盗摄久久久| 国产精品第100页| 亚洲综合自拍一区| 国产精品第10页| 亚洲自拍偷拍一区| 色综合久久天天综线观看| 欧美日韩在线视频观看| 欧美精品videofree1080p| 性夜试看影院91社区| 亚洲自拍偷拍第一页| 国产精品久久久久9999| 国产一区深夜福利| 国产成人avxxxxx在线看| 久久99久久99精品免观看粉嫩| 尤物精品国产第一福利三区|