程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP向文件寫入或追加數據

PHP向文件寫入或追加數據

編輯:關於PHP編程

PHP向文件寫入或追加數據


php向文件裡寫入或追加數據有兩種方法,一種是fopen,還有一種是file_put_contents,本文簡要介紹一下兩種方法的具體用法,有需要的朋友可以看看。

(1)fopen

fopen() 函數打開文件或者 URL,如果打開失敗,本函數返回 FALSE。

語法:fopen(filename,mode,include_path,context)

參數   說明

filename  必需。規定要打開的文件或 URL。
mode   必需。規定要求到該文件/流的訪問類型。可能的值見下表。
include_path 可選。如果也需要在 include_path 中檢索文件的話,可以將該參數設為 1 或 TRUE。
context   可選。規定文件句柄的環境。Context 是可以修改流的行為的一套選項。

mode 參數的可能的值

mode 說明 "r" 只讀方式打開,將文件指針指向文件頭。 "r+" 讀寫方式打開,將文件指針指向文件頭。 "w" 寫入方式打開,將文件指針指向文件頭並將文件大小截為零。如果文件不存在則嘗試創建之。 "w+" 讀寫方式打開,將文件指針指向文件頭並將文件大小截為零。如果文件不存在則嘗試創建之。 "a" 寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創建之。 "a+" 讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創建之。 "x"

創建並以寫入方式打開,將文件指針指向文件頭。如果文件已存在,則 fopen() 調用失敗並返回 FALSE,並生成一條 E_WARNING 級別的錯誤信息。如果文件不存在則嘗試創建之。

這和給底層的 open(2) 系統調用指定 O_EXCL|O_CREAT 標記是等價的。

此選項被 PHP 4.3.2 以及以後的版本所支持,僅能用於本地文件。

"x+"

創建並以讀寫方式打開,將文件指針指向文件頭。如果文件已存在,則 fopen() 調用失敗並返回 FALSE,並生成一條 E_WARNING 級別的錯誤信息。如果文件不存在則嘗試創建之。

這和給底層的 open(2) 系統調用指定 O_EXCL|O_CREAT 標記是等價的。

此選項被 PHP 4.3.2 以及以後的版本所支持,僅能用於本地文件。

以追加形式寫入內容

<?php
$fp=fopen('test.txt','a');

(2)file_put_contents

file_put_contents() 函數用於把字符串寫入文件,成功返回寫入到文件內數據的字節數,失敗則返回 FALSE。

語法:int file_put_contents(string filename,string data[,int flags[,resource context]])

參數  說明

filename 要寫入數據的文件名
data  要寫入的數據。類型可以是 string,array(但不能為多維數組),或者是 stream 資源
flags  可選,規定如何打開/寫入文件。可能的值:
FILE_USE_INCLUDE_PATH:檢查 filename 副本的內置路徑
FILE_APPEND:在文件末尾以追加的方式寫入數據
LOCK_EX:對文件上鎖
context  可選,Context是一組選項,可以通過它修改文本屬性

例如:

<?php
echo file_put_contents("test.txt","www.phpernote.com");
//輸出:17

以追加形式寫入內容

當設置 flags 參數值為 FILE_APPEND 時,表示在已有文件內容後面追加內容的方式寫入新數據,例如:

<?php
file_put_contents("test.txt","www.phpernote.com",FILE_APPEND);

提示

file_put_contents() 的行為實際上等同於依次調用 fopen(),fwrite() 以及 fclose() 函數。

如果文件不存在,則創建文件,相當於fopen()函數行為。

如果文件存在,默認將清空文件內的內容,可設置 flags 參數值為 FILE_APPEND 以避免。

file_put_contents 函數可安全用於二進制對象。

您可能感興趣的文章

  • PHP判斷上傳文件類型最安全,最真實的解決辦法
  • php獲取某段時間內每個月的方法,返回由這些月份組成的數組
  • php獲取目錄所有文件並將結果保存到數組的程序
  • 使用PHP的GZip壓縮功能對網站JS和CSS文件進行壓縮加速網站訪問速度
  • PHP分析文件頭信息判斷上傳文件的類型
  • 給xp文件夾右鍵添加新窗口打開文件夾
  • MySQL通過命令形式導入與導出.sql文件備份數據操作的實例
  • php上傳大文件失敗的解決辦法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved