主頁 > 知識庫 > PHP文件操作簡單介紹及函數(shù)匯總

PHP文件操作簡單介紹及函數(shù)匯總

熱門標(biāo)簽:銀行業(yè)務(wù) 服務(wù)器配置 科大訊飛語音識別系統(tǒng) 電子圍欄 Linux服務(wù)器 Mysql連接數(shù)設(shè)置 團購網(wǎng)站 阿里云

文件操作一直是Web程序員頭疼的地方,而文件操作在CMS這樣的系統(tǒng)中又是必須的。如今,PHP文件操作的函數(shù)內(nèi)容已經(jīng)非常強大,文件這部分也是學(xué)習(xí)PHP非常重要的一部分,希望大家不要忽略。這篇文章會簡單介紹一下PHP的幾個基本文件操作,最后附有PHP文件函數(shù)匯總,供大家參考和學(xué)習(xí)。

1. 打開文件:fopen("文件名","模式");

模式參數(shù):

r:只讀,將文件指針指向文件頭。
r+:讀/寫,將文件指針指向文件頭。
w:只寫,打開并清空文件的內(nèi)容。如果文件不存在,則創(chuàng)建文件。
w+:讀/寫,打開并清空文件的內(nèi)容。如果文件不存在,則創(chuàng)建文件。
a:追加,打開并向文件的末端進行寫操作。如果文件不存在,則創(chuàng)建新文件。
a+:讀/追加,通過向文件末端寫內(nèi)容,來保持文件內(nèi)容。

2. 關(guān)閉文件:fclose();

使用文件完畢,要顯式的告訴PHP已經(jīng)使用完文件,例如:

$file=fopen("test.txt","r"); //關(guān)閉一個已打開的文件指針
//some code be executed
fclose=($file);

3. 檢測是否已達到文件的末端:feof();

例如:if(feof($file)){ echo "end of file";}

4. 逐行讀取文件:fgets();

例如:

$file=fopen("test.txt","r");
while(!feof($file)){
echo fgets($file)." br/>";
}
fclose($file);

5. 逐字符讀取文件:fgetc()

6. 讀取任意二進制數(shù)據(jù):fread()

7. 判斷文件讀取的狀態(tài)

每個文件句柄都有一個文件指針,根據(jù)fopen函數(shù)的mode參數(shù),文件指針最初位于文件的開頭,或者文件的末尾。feof()可以判斷文件是否已經(jīng)到末尾;filesize()函數(shù)返回文件的大小。

8. 寫入文件和權(quán)限判斷

fwrite() 函數(shù)執(zhí)行文件寫入
is_readable()//判斷文件是否可讀
is_writeable()//判斷文件是否可寫
is_writable()//判斷文件是否可寫
file_exists()//是否存在這個文件

代碼舉例:

$filename = 'test.txt'; 
$somecontent;
// 首先我們要確定文件存在并且可寫
if (is_writable($filename)) { 
// 在這個例子里,我們將使用添加模式打開$filename, 因此,文件指針將會在文件的開頭,那就是當(dāng)我們使用fwrite()的時候,$somecontent將要寫入的地方。 
 
  if (!$handle = fopen($filename, 'a')) { 
    echo "不能打開文件 $filename"; 
    exit; 
  } 
   // 將$somecontent寫入到我們打開的文件中。 
    if (fwrite($handle, $somecontent) === FALSE) { 
       echo "不能寫入到文件 $filename"; 
       exit; 
    } 
 
    echo "成功地將 $somecontent 寫入到文件$filename"; 
    fclose($handle); 
}
 
else{ 
   echo "文件 $filename 不可寫";
}

9. 將文件讀取到一個數(shù)組:

$array=file("text.txt"),$array[0]就是第一行文本,依次類推。如果要翻轉(zhuǎn)整個數(shù)組,例如:
$arr=array_reverse($array);

則最后一行文本就是$arr[0]

10. 訪問目錄

目錄訪問建議使用前向斜線"/",兼容windows和unix系統(tǒng)。主要函數(shù)包括:

basename()//返回不包括路徑信息的文件名
dirname()//返回文件名的目錄部分
realpath()//接受相對路徑,返回文件的絕對路徑
pathinfo()//提取給定路徑的目錄名,基本文件名和擴展名
opendir()//打開目錄,返回資源句柄
readdir()//讀取目錄項
rewinddir()//將讀取指針返回開頭
closedir()//關(guān)閉讀取句柄
chdir()//改變當(dāng)前腳本執(zhí)行期間的當(dāng)前工作目錄
mkdir()//創(chuàng)建目錄
rmdir()刪除目錄

附:PHP文件函數(shù)大全

basename — 返回路徑中的文件名部分
chgrp — 改變文件所屬的組
chmod — 改變文件模式
chown — 改變文件的所有者
clearstatcache — 清除文件狀態(tài)緩存
copy — 拷貝文件
delete — 參見 unlink() 或 unset()
dirname — 返回路徑中的目錄部分
disk_free_space — 返回目錄中的可用空間
disk_total_space — 返回一個目錄的磁盤總大小
diskfreespace — disk_free_space()的別名
fclose — 關(guān)閉一個已打開的文件指針
feof — 測試文件指針是否到了文件結(jié)束的位置
fflush — 將緩沖內(nèi)容輸出到文件
fgetc — 從文件指針中讀取字符
fgetcsv — 從文件指針中讀入一行并解析 CSV 字段
fgets — 從文件指針中讀取一行
fgetss — 從文件指針中讀取一行并過濾掉 HTML 標(biāo)記
file_exists — 檢查文件或目錄是否存在
file_get_contents — 將整個文件讀入一個字符串
file_put_contents — 將一個字符串寫入文件
file — 把整個文件讀入一個數(shù)組中
fileatime — 取得文件的上次訪問時間
filectime — 這個PHP文件函數(shù)取得文件的 inode 修改時間
filegroup — 取得文件的組
fileinode — 取得文件的 inode
filemtime — 取得文件修改時間
fileowner — 取得文件的所有者
fileperms — 取得文件的權(quán)限
filesize — 取得文件大小
filetype — 取得文件類型
flock — 輕便的咨詢文件鎖定
fnmatch — 用模式匹配文件名
fopen — 打開文件或者 URL
fpassthru — 輸出文件指針處的所有剩余數(shù)據(jù)
fputcsv — 將行格式化為 CSV 并寫入文件指針
fputs — fwrite()的別名
fread — 讀取文件(可安全用于二進制文件)
fscanf — 從文件中格式化輸入
fseek — 在文件指針中定位
fstat — 通過已打開的文件指針取得文件信息
ftell — 返回文件指針讀/寫的位置
ftruncate — 將文件截斷到給定的長度
fwrite — 寫入文件(可安全用于二進制文件)
glob — 尋找與模式匹配的文件路徑
is_dir — 該PHP文件函數(shù)判斷給定文件名是否是一個目錄
is_executable — 判斷給定文件名是否可執(zhí)行
is_file — 判斷給定文件名是否為一個正常的文件
is_link — 判斷給定文件名是否為一個符號連接
is_readable — 判斷給定文件名是否可讀
is_uploaded_file — 判斷文件是否是通過 HTTP POST 上傳的
is_writable — 判斷給定的文件名是否可寫
is_writeable — is_writable()的別名
link — 建立一個硬連接
linkinfo — 獲取一個連接的信息
lstat — 給出一個文件或符號連接的信息
mkdir — 新建目錄
move_uploaded_file — 將上傳的文件移動到新位置
parse_ini_file — 解析一個配置文件
pathinfo — 返回文件路徑的信息
pclose — 關(guān)閉進程文件指針
popen — 打開進程文件指針
readfile — 輸出一個文件
readlink — 返回符號連接指向的目標(biāo)
realpath — 返回規(guī)范化的絕對路徑名
rename — 重命名一個文件或目錄
rewind — 倒回文件指針的位置
rmdir — 刪除目錄
set_file_buffer — stream_set_write_buffer()的別名
stat — 給出文件的信息
symlink — 建立符號連接
tempnam — 建立一個具有唯一文件名的文件
tmpfile — 建立一個臨時文件
touch — 設(shè)定文件的訪問和修改時間
umask — 改變當(dāng)前的 umask
unlink — 刪除文件

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • thinkphp5.1 框架導(dǎo)入/導(dǎo)出excel文件操作示例
  • PHP實現(xiàn)文件上傳操作和封裝
  • PHP檢查文件是否存在,不存在自動創(chuàng)建及讀取文件內(nèi)容操作示例
  • php利用ZipArchive類操作文件的實例
  • PHP 文件寫入和讀取操作實例詳解【必看篇】
  • php遍歷目錄下文件并按修改時間排序操作示例
  • PHP 實現(xiàn)文件壓縮解壓操作的方法
  • PHP微信網(wǎng)頁授權(quán)的配置文件操作分析

標(biāo)簽:江蘇 衢州 衡水 大理 廣元 棗莊 萍鄉(xiāng) 蚌埠

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP文件操作簡單介紹及函數(shù)匯總》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266