基于PHP常用文件函数和目录函数整理

一、常用文件函数库

1、basename(); -- 返回路径中的文件名部分。

string basename ( string $path [, string $suffix ] ) //给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名。  

参数:path 一个路径。在 Windows 中,斜线(/)和反斜线(\)都可以用作目录分隔符。在其它环境下是斜线(/)

suffix 如果文件名是以 suffix 结束的,那这一部分也会被去掉。

返回值:返回 path 的基本的文件名。

$path = 'd:/test/test.txt'; echo basename($path); echo "<br>"; echo basename($path,'.txt');

2、dirname(); -- 返回路径中目录部分

string dirname ( string $path ) //给出一个包含有指向一个文件的全路径的字符串,本函数返回去掉文件名后的目录名。 

参数:path,一个路径。在 Windows 中,斜线(/)和反斜线(\)都可以用作目录分隔符。在其它环境下是斜线(/)。

返回值:返回 path 的父目录。 如果在 path 中没有斜线,则返回一个点('.'),表示当前目录。否则返回的是把path 中结尾的 /component(最后一个斜线以及后面部分)去掉之后的字符串。

$path = 'd:/test/test.txt'; echo basename($path); echo "<br>"; echo basename($path,'.txt'); echo "<br>"; echo dirname($path);

3、pathinfo(); --返回文件路径的信息

mixed pathinfo ( string $path [, int $options = PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME ] ) //pathinfo() 返回一个关联数组包含有 path 的信息。返回关联数组还是字符串取决于 options。  

参数: path 要解析的路径。    

options 如果指定了,将会返回指定元素;它们包括:PATHINFO_DIRNAME,PATHINFO_BASENAME 和PATHINFO_EXTENSION 或 PATHINFO_FILENAME。如果没有指定 options 默认是返回全部的单元。 

返回值:如果没有传入 options ,将会返回包括以下单元的数组 array:dirname,basename 和 extension(如果有),以 及filename。   

$path = 'd:/test/test.txt'; var_dump(pathinfo($path));

4、filetype();--取得文件类型

string filetype ( string $filename ) //返回文件的类型。

参数: filename 文件的路径。 

返回值: 返回文件的类型。

可能的值有 fifo,char,dir,block,link,file 和 unknown。如果出错则返回 FALSE。如果 stat 调用失败或者文件类型未知的话 filetype() 还会产生一个 E_NOTICE 消息。

$path = 'd:/test/test.txt'; echo filetype($path); //结果file

5、fstat()和stat();

⑴、fstat()-通过已打开的文件指针取得文件信息

array fstat ( resource $handle ) //获取由文件指针 handle 所打开文件的统计信息。本函数和 stat() 函数相似,除了它是作用于已打开的文件指针而不是文件名。

参数: handle 文件系统指针,是典型地由 fopen() 创建的 resource(资源)。

返回值: 返回一个数组具有该文件的统计信息,该数组的格式详细说明于手册中 stat() 页面里。

⑵、stat() --给出文件的信息

array stat ( string $filename ) //获取由 filename 指定的文件的统计信息。如果 filename 是符号连接,则统计信息是关于被连接文件本身的,而不是符号连接。 //lstat() 和 stat() 相同,只除了它会返回符号连接的状态。

参数:filename 文件的路径.

$path = 'd:/test/test.txt'; $fp = fopen("d:/test/test.txt","r"); $fstat = fstat($fp); fclose($fp); var_dump($fstat);

6、filesize();--取得文件大小

int filesize ( string $filename ) //取得指定文件的大小。

参数:filename 文件的路径。

返回值:返回文件大小的字节数,如果出错返回 FALSE 并生成一条 E_WARNING 级的错误。

<?php // 输出类似:test.txt: bytes $filename = 'd:/test/test.txt'; echo $filename . ': ' . filesize($filename) . ' bytes'; ?> //结果:d:/test/test.txt: 12 bytes

7、disk_free_space(); -- 返回目录中的可用空间

float disk_free_space ( string $directory ) //给出一个包含有一个目录的字符串,本函数将根据相应的文件系统或磁盘分区返回可用的字节数。 

参数:directory 文件系统目录或者磁盘分区。

header("Content-Type:Text/html;charset=utf8"); $path = 'd:/test/test.txt'; $df = disk_free_space("d:/"); echo $df."字节";

8、disk_total_space(); --返回一个目录的磁盘总大小

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/ca0b53eb6dec50b7f4cb0a4863d90616.html