首页 > php学习 > php基础知识 > PHP中文件的属性
2017
01-03

PHP中文件的属性

一、判断文件和目录

file_exists(string $filename) 判断文件或目录是否存在

is_file(string $filename) 判断给定文件名是否为一个正常的文件

is_dir(string $filename) 判断给定文件名是否是一个目录

is_readable (string $filename) 判断给定文件名是否存在并且可读。

is_writable (string $filename) 判断给定文件名是否存在并且可写。

is_executable(string $filename) 判断给定文件名是否可执行。

is_link(string $filename) 判断给定文件名是否存在并且是一个符号连接文件(软连接文件)。

二、文件的属性

stat(string $filename) 获取指定文件的信息。如果filename是符号连接,则统计被连接文件,而不是符号连接本身。

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

lstat(string $filename) 获取指定的文件信息。如果filename是符号连接,则统计符号连接本身,而不是被连接文件,其他和stat()相同。

上面三个函数的返回数组中的键值:

dev 设备名

ino inode号码

mode inode保护模式

nlink 被连接数目

uid 所有者的用户id

gid 所有者的组id

rdev 设备类型,如果是inode设备的话

size 文件大小的字节数

atime 上次访问时间(Unix 时间戳)

mtime 上次修改时间(Unix 时间戳)

ctime 上次改变时间(Unix 时间戳)

blksize 文件系统 IO 的块大小

blocks 所占据块的数目

filesize(string $filename) 取得普通文件大小

filectime(string $filename) 获取文件的创建时间

filemtime(string $filename) 获取文件的修改时间

fileatime(string $filename) 取得文件的上次访问时间

fileinode ( string $filename )返回文件的索引节点(inode)

filegroup(string $filename) 取得文件所属组ID

posix_getgrgid(int $gid) 将组id其解析为包含组名、密码、组id、组成员组成的数组。

fileowner(string $filename) 取得文件所有者ID。

posix_getpwuid(int $uid) 将用户id其解析为包含用户名、密码、用户id、组id、、家目录、使用的shell组成的数组。

filetype (string $filename) 返回文件的类型。 可能的值有 fifo,char,dir,block,link,file 和 unknown。

fileperms (string $filename) 取得文件的权限,返回十进制的数字,要转换为八进制并取后4位。

substr(sprintf('%o', fileperms(string $filename)), -4)

clearstatcache() 清除文件状态缓存,受影响的函数包括 stat(), lstat(), file_exists(), is_writable(), is_readable(), is_executable(), is_file(), is_dir(), is_link(), filectime(), fileatime(), filemtime(), fileinode(), filegroup(), fileowner(), filesize(), filetype() 和 fileperms()。

当使用任何列在受影响函数表中的函数时,PHP将缓存这些函数的返回信息以提供更快的性能。如果在一个脚本中多次检查同一个文件,而该文件在此脚本执行期间有可能被删除或修改,要清除文件状态缓存。必须注意的是,对于不存在的文件,PHP 并不会缓存其信息。如调用 file_exists()来检查不存在的文件

chgrp(string $filename,mixed $group) 将文件所属的组改成group通过组名或组 ID 指定)。

chown(string $filename ,mixed $user) 将文件的所有者改成用户user(由用户名或用户 ID 指定)。只有超级用户可以改变文件的所有者。

touch (string $filename[,int $time=time()[,int $atime=time()]]) 尝试设定文件的访问时间($time)和修改时间($atime)。如果文件不存在,则会被创建。

getcwd() 取得当前工作目录

chdir(string $directory) 将 PHP 的当前目录改为 directory。

chmod(string $filename,int $mode) 尝试将 filename 所指定文件的权限改成 mode 所给定的。chmod("/dir/file", 0755);

getmyinode() 获取当前脚本的索引节点(inode)

getmygid() 获取当前 PHP 脚本拥有者的用户组 ID。

getmyuid() 获取 PHP 脚本所有者的 UID

getmypid() 获取 PHP 进程的 ID

get_current_user() 获取当前 PHP 脚本所有者名称

getlastmod() 获取页面最后修改的时间

readlink(string $path) 返回符号连接的内容。

symlink(string $target,string $link) 对于已有的 target 建立一个名为 link 的符号连接。

linkinfo(string $path) 获取一个连接的信息。 本函数用来验证一个连接(由 path 所指向的)是否确实存在

disk_free_space()函数返回指定的目录所在磁盘分区的可用空间

disk_total_space()函数返回指定的目录所在磁盘分区的总容量

最后编辑:
作者:qingheluo
这个作者貌似有点懒,什么都没有留下。