麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > PHP > 正文

php中常用文件操作讀寫函數(shù)介紹

2024-09-04 11:48:20
字體:
供稿:網(wǎng)友

本文章介紹了下面幾個(gè)常用的文件操作函數(shù) file_get_contents 讀取整個(gè)文件內(nèi)容 fopen 創(chuàng)建和打開文件 fclose 關(guān)閉文件 fgets 讀取文件一行內(nèi)容 file_exists 檢查文件或目錄是否存在 file_put_contents 寫入文件 fwrite 寫入文件

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

下面是一個(gè)簡(jiǎn)單的檢查文件是否存在的實(shí)例代碼:

實(shí)例代碼如下:

  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> 

如果文件存在,執(zhí)行該 PHP 文件的顯示結(jié)果是:

The file C:blablaphphello.txt exists.

如果文件不存在,執(zhí)行該 PHP 文件的顯示結(jié)果是:

The file C:blablaphphello.txt does not exist.

你也可以用file_exists 函數(shù)測(cè)試某個(gè)目錄是否存在,示例代碼如下:

實(shí)例代碼如下:

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

用 PHP 內(nèi)置函數(shù) file_get_contents 可以讀取整個(gè)文件內(nèi)容.

file_get_contents 函數(shù)讀取整個(gè)文件,返回一個(gè)字符串.file_get_contents 最簡(jiǎn)單的寫法如下:

file_get_contents(filepath)

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

C:blablaphphello.txt

下面的 php 代碼用 file_get_contents 函數(shù)讀取該文件,并輸出該文件內(nèi)容:

實(shí)例代碼如下:

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

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

file_get_contents 函數(shù)的返回值是所讀取的文件內(nèi)容字符串,如果出錯(cuò),返回 FALSE.

使用 PHP 內(nèi)置函數(shù) fopen,可以打開一個(gè)文件.

打開文件

fopen 最簡(jiǎn)單語法如下:

fopen(filepath,mode)

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

實(shí)例代碼如下:

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

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

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

模式 (mode) 說明 

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

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

w 只寫,文件指針在文件開始處,將文件長(zhǎng)度截成0.

如果文件不存在,創(chuàng)建文件.

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

如果文件不存在,創(chuàng)建文件.

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

如果文件不存在,創(chuàng)建文件.

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

如果文件不存在,創(chuàng)建文件.

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

如果文件已經(jīng)存在,fopen () 函數(shù)返回 FALSE 并產(chǎn)生一個(gè)E_WARNING 級(jí)別的錯(cuò)誤.

如果文件不存在,創(chuàng)建文件.

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

如果文件已經(jīng)存在,fopen () 函數(shù)返回 FALSE 并產(chǎn)生一個(gè)E_WARNING 級(jí)別的錯(cuò)誤.

如果文件不存在,創(chuàng)建文件.

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

創(chuàng)建文件

選擇 fopen 函數(shù)參數(shù) mode 的適當(dāng)?shù)闹?,你可以用 fopen 創(chuàng)建一個(gè)文件,比如:

實(shí)例代碼如下:

  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 內(nèi)置函數(shù) fgets 可以讀取文件的一行內(nèi)容.

fgets讀取文件一行內(nèi)容的語法是:

fgets(filepointer)

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

假設(shè)我們有一個(gè) sites.txt 文件,該文件有三行,內(nèi)容如下:

woyouxian.comblabla.cngoogle.com

sites.txt 的文件路徑是:

C:blablaphpsites.txt

我們用 PHP 一行行讀取文件內(nèi)容,PHP代碼如下:

實(shí)例代碼如下:

  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> 

執(zhí)行該 PHP 文件,返回的顯示結(jié)果是:

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

該 PHP 代碼的第一行是打開文件,最后一行是關(guān)閉一個(gè)文件.當(dāng)中的 while 循環(huán)語句表示,當(dāng)文件沒有結(jié)束,就讀取一行,循環(huán)執(zhí)行,直到文件指針到文章末尾為止.

feof 函數(shù)是PHP 的一個(gè)內(nèi)置函數(shù),用來測(cè)試文件指針是否已經(jīng)到了文件末尾.如果是返回 TRUE,如果不是,返回 FALSE.eof 的英文意思就是 end of file,很容易記.

正常情況下,fgets 函數(shù)的返回值是一個(gè)字符串,如果出錯(cuò),返回 FALSE.

講述使用 PHP 內(nèi)置函數(shù) fclose 關(guān)閉一個(gè)文件.

fclose 函數(shù)語法如下:

fclose(filepointer)

如果成功,fclose 函數(shù)返回 TRUE,如果失敗,fclose 函數(shù)返回 FALSE.

下面是一個(gè) fclose 函數(shù)的 PHP 代碼示例:

實(shí)例代碼如下:

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

這一章節(jié)我們講述如何用 fopen, fwrite, fclose 來實(shí)現(xiàn)打開文件、寫入文件和保存關(guān)閉文件的這一系列的操作.重點(diǎn)講述 fwrite 函數(shù).

PHP 內(nèi)置函數(shù) fwrite 用于寫入文件.

fwrite 函數(shù)的常用語法為:

fwrite(handle,string)

其中,參數(shù) handle 表示文件指針資源 (通常由 fopen 函數(shù)創(chuàng)建),string 表示要寫入的內(nèi)容.

下面一個(gè)PHP 代碼示例演示如何創(chuàng)建一個(gè)新文件,并寫入內(nèi)容,然后保存并關(guān)閉文件:

實(shí)例代碼如下:

  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> 

執(zhí)行該 PHP 文件后,會(huì)創(chuàng)建一個(gè)路徑為 C:blablaphpwrite.txt 的文件,文件的內(nèi)容是It is awesome..

如果你想在現(xiàn)有文件上再追加內(nèi)容,你只要修改 fopen 的 參數(shù) mode 值即可,如下:

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

有關(guān) fopen 函數(shù)的參數(shù) mode 值,詳見 fopen.

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

PHP 內(nèi)置函數(shù) file_put_contents 用于寫入文件.

file_put_contents 函數(shù)最簡(jiǎn)單的寫法,可以只用兩個(gè)參數(shù),一個(gè)是文件路徑,一個(gè)是要寫入的內(nèi)容,語法如下:

file_put_contents(filepath,data)

如果文件不存在,file_put_contents 函數(shù)會(huì)自動(dòng)創(chuàng)建文件;如果文件已存在,原有文件被重寫.

你可以利用 file_put_contents 函數(shù)創(chuàng)建并寫入一個(gè)新文件,或者重寫一個(gè)原有文件.

下面是一個(gè)使用 file_put_contents 函數(shù)的 PHP 代碼示例:

實(shí)例代碼如下:

  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 代碼示例會(huì)創(chuàng)建一個(gè)路徑為 C:blablafilesysone.txt 的文件,該文件的內(nèi)容是 one for all .

如果你想在一個(gè)已有文件上追加內(nèi)容,你也可以使用file_put_contents 函數(shù),只需要加一個(gè)參數(shù)即可.

file_put_contents(filepath,data,flags)

當(dāng) flags 的值為 FILE_APPEND 時(shí),表示在已有文件上追加內(nèi)容.

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

實(shí)例代碼如下:

  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> 

執(zhí)行該 PHP 文件之后,我們?cè)倏?C:blablafilesysone.txt 文件,發(fā)現(xiàn)文件內(nèi)容增加了,變成了:

one for all all for one

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

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 欧美日韩在线中文 | 调教小男生抽打尿孔嗯啊视频 | 久久亚洲美女视频 | 欧美一级免费高清 | 国产 一区 精品 | 欧美日韩免费在线观看视频 | 日本一区二区在线 | 国产精品久久久久久久午夜片 | 国产精品一区在线看 | 成年人小视频在线观看 | 久久久久se | 在线观看国产一区二区 | 成人在线观看免费视频 | 国产精品久久久久国产精品三级 | 手机视频在线播放 | 国产成人精品一区二区仙踪林 | 亚洲最大的成人网 | 在线看免费观看日本 | 成人一级黄色片 | 日韩精品网站在线观看 | 日韩美女电影 | 日韩精品中文字幕在线观看 | 全黄性性激高免费视频 | 污片视频网站 | 国产午夜精品理论片a级探花 | 亚洲一区二区中文字幕在线观看 | 成人三级视频网站 | 午夜伊人 | 一区二区三区手机在线观看 | 91看片淫黄大片欧美看国产片 | 蜜桃成品人免费视频 | 九九热这里只有精品8 | 毛片在线免费播放 | 99re热精品视频 | 国产无遮挡一区二区三区毛片日本 | 国产自在自线午夜精品视频在 | av在线看网站 | 欧美成人毛片 | 最近国产中文字幕 | 久久精品9 | 精品久久久久久久久亚洲 |