前面的話

在程序運行時,程序本身和數(shù)據(jù)一般都存在內(nèi)存中,當程序運行結束后,存放在內(nèi)存中的數(shù)據(jù)被釋放。如果需要長期保存程序運行所需的原始數(shù)據(jù),或程序運行產(chǎn)生的結果,就需要把數(shù)據(jù)存儲在文件或數(shù)據(jù)庫。一般地,小型數(shù)據(jù)存儲在文件中,海量數(shù)據(jù)存儲在數(shù)據(jù)庫中。本文主要介紹php中目錄和文件的基本操作

 

文件類型

文件一般指存儲在外部介質(zhì)上具有名字(文件名)的一組相關數(shù)據(jù)集合。用文件可長期保存數(shù)據(jù),并實現(xiàn)數(shù)據(jù)共享

PHP是以UNIX的文件系統(tǒng)為模型的。因此在Windows系統(tǒng)中我們只能獲得”file”、”dir”或者“unknown”三種文件類型。而在UNIX系統(tǒng)中,我們可以獲得block、char、dir、fifo、file、link和unknown七種類型

可以使用函數(shù)filetype()獲取文件的具體類型,可能的值有fifo,char,dir,block,link,file 和 unknown

string filetype ( string filename ) 

如果出錯則返回 FALSE。如果調(diào)用失敗或者文件類型未知的話 filetype() 還會產(chǎn)生一個 E_NOTICE 消息

在服務器中新建一個目錄test,并在目錄中新建一個文件a.txt

<?php
echo filetype('test/a.txt');  // file
echo filetype('test/');        // dir
echo filetype('test/b.txt');  // Warning: filetype(): Lstat failed for test/b.txt
?>

在這7種文件類型中,window系統(tǒng)常用的是'file'和'dir'這兩種,它們配套的類型檢測函數(shù)分別是is_dir( )和is_file( )

is_dir( )

判斷給定文件名是否是一個目錄。如果文件名存在并且是一個目錄則返回 true,否則返回 false

bool is_dir(_name)

is_file( )

判斷給定文件名是否為一個正常的文件,如果文件存在且為正常的文件則返回 true 

bool is_file(_name)