<html>

來源:互聯網
上載者:User

標籤:指令碼   函數返回   head   type   sub   filename   data-   comm   lock   

PHP中對檔案的操作:建立、讀取、上傳、編輯。 PHP提過了多種相關的函數。

1、readfile()

int readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )

參數:

  1. filename:檔案名稱。
  2. use_include_path:是否也在include_path中搜尋檔案。
  3. context:規定檔案控制代碼的環境。Context 是能夠改動流的行為的一套選項。

傳回值:返回從檔案裡讀入的位元組數。假設出錯返回 FALSE 而且除非是以 @readfile() 形式調用。否則會顯示錯誤資訊。


示範範例:
1.php和new.txt在同一個目錄

1.php內容:

<?

phpecho @readfile("new.txt");?

>

new.txt內容:

It‘s a new file.

執行1.php結果:

It‘s a new file.16

2、fopen()

resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context ]] )

參數:

  1. filename:假設 filename 是 “scheme://…” 的格式,則被當成一個 URL,PHP 將搜尋協議處理器(也被稱為封裝協議)來處理此模式。假設該協議尚未注冊封裝協議,PHP 將發出一條訊息來協助檢查指令碼中潛在的問題並將 filename 當成一個普通的檔案名稱繼續執行下去。

  2. mode:指定了所要求到該流的訪問類型。
  3. use_include_path:是否也在include_path中搜尋檔案;
  4. context:規定檔案控制代碼的環境。

    Context 是能夠改動流的行為的一套選項。

傳回值:
成功時返回檔案指標資源,假設開啟失敗,本函數返回 FALSE
註:檔案訪問類型表

mode 說明
“r” 僅僅讀方式開啟,將檔案指標指向檔案頭
“r+” 讀寫方式開啟。將檔案指標指向檔案頭
“w” 寫入方式開啟。將檔案指標指向檔案頭並將檔案大小截為零。假設檔案不存在則嘗試建立之。

“w+” 讀寫方式開啟,將檔案指標指向檔案頭並將檔案大小截為零。

假設檔案不存在則嘗試建立之。

“a” 寫入方式開啟,將檔案指標指向檔案末尾。假設檔案不存在則嘗試建立之。
“a+” 讀寫方式開啟,將檔案指標指向檔案末尾。假設檔案不存在則嘗試建立之。
“x” 建立並以寫入方式開啟。將檔案指標指向檔案頭。假設檔案已存在。則 fopen() 調用失敗並返回 FALSE,並產生一條 E_WARNING 層級的錯誤資訊。假設檔案不存在則嘗試建立之。這和給底層的 open(2) 系統調用指定 O_EXCL
“x+” 建立並以讀寫方式開啟,將檔案指標指向檔案頭。假設檔案已存在,則 fopen() 調用失敗並返回 FALSE,並產生一條 E_WARNING 層級的錯誤資訊。假設檔案不存在則嘗試建立之。

這和給底層的 open(2) 系統調用指定 O_EXCL

3、fread()

string fread ( resource $handle , int $length )
從檔案指標 handle 讀取最多 length 個位元組

參數:

  1. head:檔案系統指標,是典型地由 fopen() 建立的 resource(資源)。
  2. length:最多讀取 length 個位元組。

傳回值:
返回所讀取的字串。 或者在失敗時返回 FALSE。

4、fclose()

bool fclose ( resource $handle )
將指定檔案關閉(好習慣,降低server資源佔用)。檔案指標必須有效。而且是通過 fopen() 或 fsockopen() 成功開啟的。

5、fgets()

string fgets ( resource $handle [, int $length ] )
從檔案裡讀取一行資料。從 handle 指向的檔案裡讀取一行並返回長度最多為 length - 1 位元組的字串。

碰到分行符號(包含在傳回值中)、EOF 或者已經讀取了 length - 1 位元組後停止(看先碰到那一種情況)。假設沒有指定 length,則默覺得 1K,或者說 1024 位元組。

6、feof()

bool feof ( resource $handle )
測試檔案指標是否到了檔案結束的位置。

7、fgetc()

string fgetc ( resource $handle )
從檔案裡讀取單個字元。

8、fwrite()

int fwrite ( resource $handle , string $string [, int $length ] )

參數:

  1. handle:檔案系統指標。是典型地由 fopen() 建立的 resource(資源);
  2. string:要寫入的字串。
  3. length:假設指定了 length。當寫入了 length 個位元組或者寫完了 string 以後,寫入就會停止,視乎先碰到哪種情況。

傳回值:
fwrite() 返回寫入的字元數,出現錯誤時則返回 FALSE 。

9、一個超級簡單的評論牆
<html><head><title>評論牆</title></head><body><!--評論表單--><form method="post"  action="<?php echo htmlspecialchars($_SERVER[‘PHP_SELF‘])?>">暱稱:<input type="text" name="name"></input><br />評論:<textarea rows=‘5‘ cols=‘19‘ name="comment"></textarea><br /><input type="submit" name="submit" value="提交">
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.