PHP fwrite()函數
fwrite() 函數用於向檔案寫入字串,成功傳回寫入的字元數,否則傳回 FALSE 。
語法:
int fwrite( resource handle, string string [, int length] )
fwrite() 把 string 的內容寫入檔案指標 handle 處。
參數說明:
#參數 | 描述 |
---|---|
#handle | 必要。規定要寫入的開啟文件。一般由 fopen() 函數建立 |
string | #必要。規定要寫入開啟檔案的字串。 |
length | 可選。規定要寫入的最大位元組數。 |
ps:如果指定了可選參數length,當寫入了length 個位元組或寫完了string 以後,寫入就會停止。
範例
<?php // 要写入的文件名字 $filename = 'file.txt'; // 写入的字符 $word = "你好!"; $fh = fopen($filename, "w"); echo fwrite($fh, $word); // 输出:6 fclose($fh); ?>
執行該範例程序,在程序同目錄下,file.txt 檔案內容為:你好!
使用length 參數
在上面的範例中,如果使用了length 參數,則至多寫入length 個字串:
echo fwrite($fh, $word, 4); // 输出:4
PHP fwrite 追加寫入
對檔案的追加寫入,實際上與fwrite 函數無關,而與fopen 函數開啟檔案的模式有關。當fopen 開啟檔案時,mode 參數選擇a ,則表示在檔案後面追加寫入:
<?php $filename = 'file.txt'; $word = "你好!"; $fh = fopen($filename, "a"); echo fwrite($fh, $word); fclose($fh); ?>
PHP fwrite 換行寫入
##如果要在檔案中實現換行寫入,只需要在寫入內容中需要換行的地方添加換行符n 即可:<?php $filename = 'file.txt'; $word = "你好!n"; $fh = fopen($filename, "a"); echo fwrite($fh, $word); fclose($fh); ?>上面的例子在內容結尾添加了n 換行符。要讓n 在寫入檔案時表示換行,寫入時需使用雙引號(如上面範例),如果使用單引號,n 字元不會被解釋為換行而是當做n 字串,點擊查看:PHP 字串中單引號與雙引號的差異。 n 已經是真正意義上的換行,在windows 作業系統上如果要模擬回車換行(即用寫字板開啟檔案時,不是黑方塊而是一行一行的列出),可以在n前面加入r 回車符號:
<?php $word = "你好!rn"; ?>
PHP fwrite 寫入權限
當開啟一個已經存在的檔案(通常是追加寫入模式),有必要偵測該檔案是否具有寫入權限,從而避免一個系統錯誤的發生。使用 is_writable 函數檢測檔案是否可寫入。 下面是追加寫入模式下一個比較嚴格檢查的例子,程式碼如下:<?php $filename = 'file.txt'; $word = "你好!n"; // 确定文件存在并且可写 if (is_writable($filename)) { //打开文件 if (!$fh = fopen($filename, 'a')) { echo "不能打开文件 $filename"; exit; } // 写入内容 if (fwrite($fh, $word) === FALSE) { echo "不能写入到文件 $filename"; exit; } echo "成功地将 $word 写入到文件 $filename"; fclose($fh); } else { echo "文件 $filename 不可写"; } ?>PHP fwrite 函數只是執行向檔案寫入字串的動作,實際它的行為結果取決於fopen 函數更多一些。
【相關文章推薦】:
1.詳解php fwrite() 函數寫入檔案實例詳解##2 .
php fwrite()函數換行寫入時換行符不起作用怎麼辦以上是實例詳解php fwrite() 函數追加與換行寫入的詳細內容。更多資訊請關注PHP中文網其他相關文章!