1.基本文件类型
File 普通文件,如文本文件、可执行文件。
Dir 目录文件,比如某个文件夹
Unknow 未知文件
在windows中只有上面三种文件类型,如果是linux系统还有下面文件类型
Block 块设备,比如某个磁盘分区
Char 字符设备,比如键盘、打印机
Fifo 管道,用来将数据从一个进程传递到另一个进程
Link 链接,相当于windows中的快捷方式
使用filetype获得文件的类型
1
判断文件类型
1
2.文件的属性
1 "; 4 if(file_exists(__DIR__)) echo "目录".__DIR__."存在"; 5 6 /*filesize()取得文件的大小,以字节为单位*/ 7 /*注:是取得文件的大小不是目录*/ 8 echo "文件".__FILE__."的大小是".filesize(__FILE__)."字节"; 9 10 /*is_readable()判断文件是否可读*/11 if(is_readable(__FILE__)) echo "文件".__FILE__."可读";12 13 /*is_writable()判断文件是否可写*/14 if(is_readable(__FILE__)) echo "文件".__FILE__."可写";15 16 /*is_executable()判断文件是否可执行*/17 if(is_readable(__FILE__)) echo "文件".__FILE__."可执行";18 19 date_default_timezone_set('PRC');20 21 /*filectime()文件的创建时间*/22 echo "文件的创建时间为".date('Y/m/d H:i:s',filectime(__FILE__))."";23 24 /*filemtime()文件的修改时间*/25 echo "文件的修改时间为".date('Y/m/d H:i:s',filemtime(__FILE__))."";26 27 /*fileatime()文件的最后访问时间*/28 echo "文件的最后访问时间".date('Y/m/d H:i:s',filectime(__FILE__))."";29 30 /*stat()获取文件大部分属性*/31 print_r(stat(__FILE__));32 ?>
注:windows系统下默认是不会更新访问时间的,具体可以参考。
3.目录的基本操作
路径分隔符
Linux系统中以'/'做为路径分隔符,像这样E:/xampp/htdocs/test.php
Windows系统中以'\'作为路径分隔符E:\xampp\htdocs\test.php,但是Windows系统也是支持'/'作为分隔符的。
所以为了保证程序的可移植性,最好用Linux的写法。
解析路径
1 "; 4 5 /*dirname()返回一个路径中的目录部分*/ 6 echo "路径".__FILE__."的目录名是".dirname(__FILE__).""; 7 8 /*pathinfo()将一个路径中的信息以数组形式返回*/ 9 print_r(pathinfo(__FILE__));10 ?>
遍历目录
1 "; 5 6 /*readdir()接受一个资源句柄返回该目录当前指针位置的文件名,并将指针向下移动*/ 7 /*前两个文件名是 . 和 ..表示当前目录和上一级目录*/ 8 9 echo readdir($dir)."";//.10 echo readdir($dir)."";//..11 12 /*rewinddir()将目录指针重置到开头出*/13 rewinddir($dir);14 echo readdir($dir)."";//.15 16 /*closedir()释放资源*/17 closedir($dir);18 ?>
1 "; 9 }10 closedir($sdir);11 }12 13 dirlist(__DIR__);14 ?>
计算目录大小
1
注:php5表示的最大整数为PHP_INT_MAX,这个数如果等于字节数,那么表示的文件大小基本上等于2GB,所以如果想计算2GB以上的文件,请换PHP7
复制和删除目录
1