首頁 >後端開發 >php教程 >php檔案系統處理方法總結

php檔案系統處理方法總結

墨辰丷
墨辰丷原創
2018-06-02 10:17:271423瀏覽

這篇文章主要介紹了php檔案系統處理方法,總結分析了php常用的檔案操作函數功能與具體使用方法,具有一定參考借鑒價值,需要的朋友可以參考下

本文總結分析了php檔案系統處理方法。分享給大家供大家參考,如下:

檔案類型

#以Linux為模型的, 在Windows只能取得file, dir或unknow 三種類型
在Linux/Unix下, block, char, dir, fifo, file, link, unknown7種型

##block :區塊設定文件,磁碟分割區,軟驅, cd-rom等
char: 字元設備,I/O (輸入輸出中)以字元為單位的設備, 例如鍵盤,印表機等
dir :  目錄也是文件的一種/目錄文件
fifo: 訊息管道,從一個程式傳輸到另一個程序
file: 普通的文件類型如文字文件,執行檔
link: 連結文件,相當於windows下的捷徑
unknown  :未知類型

1.文件屬性處理函數

filetype("目錄或檔案名稱") 取得類型

is_dir -- 判斷給定檔案名稱是否為目錄
is_file -- 判斷給定檔案名稱是否為一個正常的檔案
is_link -- 判斷給定檔案名稱是否為一個符號連接
is_executable(); -- 判斷給定檔案名稱是否可執行
file_exists();--檔案是否存在
filesize();--傳回檔案大小
is_readable();--檔案是否可讀取
is_writeable();--檔案是否可寫
filectime();--檔案建立時間
filemtime();--檔案修改時間
fileactime();--檔案最後存取時間
stat();--檔案狀態,傳回給定檔案的資訊的陣列

bool ftruncate ( resource handle, int size );

接受檔案指標handle 作為參數,並將檔案大小截取為size。如果成功則傳回 TRUE,失敗則傳回 FALSE。

bool rename ( string oldname, string newname [, resource context] );

2.目錄##目錄屬性

* basename(url[,扩展名]);   //返回文件名
* dirname(url);   //目录名
* pathinfo(url);  //路径信息

範例:

$path="/var/www/html/page.php";
echo basename($path);// 返回page.php
echo basename($path,".php"); //page
echo dirname($paht);// /var/www/html
$arr=pathinfo($paht);
$arr["dirname"] // /var/www/html
$arr["basename"]// page.php
$arr["extension"]// .php

遍歷目錄

opendir(url);
readdir(url);//返回当前目录指针只为的一个文件名,并将目录指针向后移动一位
closedir(url);
rewinddir(url);//把目录指针重置到开始处

#統計目錄大小

統計目錄的大小只能建立遞迴函數把目錄的檔案都加起來;

統計磁碟大小可以使用disk_free_space(url);和disk_total_space(url);

建立和刪除目錄

#

mkdir(url);//建立目录
rmdir(url);//删除空目录
unlink(url);//删除文件
刪除非空目錄只能自行建立遞歸函數;

複製目錄

copy($scrfile,$to);//复制文件
得自訂遞歸函數實作目錄複製功能

3.檔案的基本操作

fopen(url);
fclose(url);

寫入檔案

int fwrite(resoure handle,strint string[,int length]) ;

傳回寫入的字元數或是FALSE

fputs()是fwrite()的別名

int file_put_contents ( string filename, string data [, int flags [, resource context]] );

和依序呼叫fopen(),fwrite() 以及fclose() 函數一樣。

讀取檔案

string fread ( resource handle, int length );
從檔案指標 handle 讀取最多 length 個位元組。函數在讀取完 length 個位元組數,或到達 EOF 的時候

string file_get_contents ( string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]] );
array file ( string filename [, int use_include_path [, resource context]] );

陣列中的每個單元都是檔案中對應的一行,包括換行符在內。

string fgets ( resource handle [, int length] );

string fgetc ( resource handle );

int readfile ( string filename [, bool use_include_path [, resource context]] );

讀入一個檔案並寫入到輸出緩衝。

如果存取遠端文件,必須在php的設定檔中啟動"allow_url_fopen"選項,才能使用fopen()函數開啟遠端檔案

使用FTP協定連接遠端檔案的時,只可以用「唯讀」或「只寫」模式開啟檔案。

移動檔案指標

int ftell ( resource handle );
傳回由 handle 指定的檔案指標的位置,也就是檔案流中的偏移量。

int fseek ( resource handle, int offset [, int whence] );

在與 handle 關聯的檔案中設定檔案指標位置。新位置,從檔案頭開始以位元組數量度量,是以 whence 指定的位置加上 offset。 whence de 值定義為:

SEEK_SET

- 設定位置等於 offset 位元組。 SEEK_CUR
- 設定位置為目前位置加上 offset。 SEEK_END
- 設定位置為檔案尾加上 offset。 (要移動到檔案尾之前的位置,需要給offset 傳遞一個負值。)

bool rewind ( resource handle );
將handle 的檔案位置指標設為檔案流的開頭

總結:以上就是本篇文的全部內容,希望對大家的學習有所幫助。

相關推薦:

ThinkPHP可防止重複提交表單的方法

PHP分頁顯示的方法分析(附PHP通用分頁類別)

PHP使用PDO抽象層取得查詢結果的方法

#

以上是php檔案系統處理方法總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn