php以Unix的文件系统为模型,共有file、dir、char、block、fifo、link和unknown七种类型,
但是在Windows中只识别三种,file、dir和unknown。
file : 普通文件类型,比如文本文件、音乐、视频、可执行文件等
dir : 目录类型,即文件夹。Unix中把一切都看作文件。
char : 字符设备,指I/O过程中以字符为单位进行传输的设备,键盘、打印机等。
block : 块设备文件,指某个磁盘分区、光驱等。
fifo : 命名管道,常用于将信息从一个进程传递倒另一个进程。
link : 符号链接。
unknown : 未知文件。
可以使用filetype()函数来获取文件的类型。如下代码:
<?php
//filetype()函数可以判断一个文件的类型
echo filetype("/home/youthflies/downloads/apache-tomcat-7.0.33.tar.gz"). "<br />"; //输出file
echo filetype("/home/youthflies/downloads/linkapache-tomcat-7.0.33.tar.gz") ."<br />"; //输出link
echo filetype("/home/youthflies/downloads") . "<br />"; //输入dir
echo filetype("/dev/sda1") . "<br />"; //输出block
echo filetype("/dev/tty1") . "<br />"; //输出char
//is_file()函数判断指定的文件是否文件类型,类似的函数还有is_dir()、is_link()、is_block()、is_block()等
if(is_file("/dev/sda1"))
echo "/dev/sda1 is file";
else
echo "/dev/sda1 is not file";
?>
上面代码输出:
file
link
dir
block
char
/dev/sda1 is not file