php标准库DirectoryIterator类的操作说明

本文详细介绍了PHP中用于文件和目录操作的各种函数与方法,包括如何创建、删除、复制文件及目录,以及如何获取文件的详细信息。还介绍了如何使用stat()函数获取文件的相关属性,并提供了文件权限、所有者和组别修改的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?php 
$dir = new DirectoryIterator(dirname(__FILE__));
foreach ($dir as $fileInfo) {
if ($fileInfo->isdir()) {
    //echo $fileInfo->getPathname();
    echo $fileInfo->getFilename(). "\t" . $fileInfo->getSize()."</br>";
    }
}
 ?>
文件信息函数
函数名函数提供什么文件信息?
file_exists()该文件是否存在
fileatime()最后访问时间
filectime()文件inode的最后修改时间
filegroup()取得文件组(返回整数)
fileinode()取得文件的信息节点数(返回整数)
filemtime()取得文件数据块最后被写入的时间(返回Unix时间戳)
fileowner()取得文件的所有者(返回用户ID)
fileperms()取得文件的权限
filesize()取得文件大小的字节数
filetype()取得文件类型,可能返回 fifo,char,dir,block,link,file 和 unknown
is_dir()判断给定文件名是否是一个目录
is_executable()判断给定文件名是否可执行(自PHP5.0.0起可用于Windows)
is_file()判断给定文件名是否为一个正常的文件
is_link()判断给定文件名是否为一个符号连接
is_readable()判断给定文件名是否可读
is_writable()判断给定文件名是否可写
目录相关函数
函数名函数提供什么文件信息?
mkdir()创建一个新目录,第二个参数可用来设置访问权限
rmdir()删除目录
rename()重命名一个文件或目录
目录类相关方法

DirectoryIterator类封装了很多与目录相关的方法

方法名函数提供什么目录信息?
isDir()判断给定的DirectoryIterator item对象是否是一个目录
isDot()判断当前的DirectoryIterator item对象是否是‘.’或‘..’
isFile()判断当前的DirectoryIterator item对象是否是一个有效的文件
isLink()判断当前的DirectoryIterator item对象是否是一个连接
isReadable()判断当前的DirectoryIterator item对象是否可读
isWritable()判断当前的DirectoryIterator item对象是否可写
isExecutable()判断当前的DirectoryIterator item对象是否可执行
getATime()获取当前Iterator item最后访问时间
getCTime()获取当前Iterator item最后修改时间
getMTime()获取当前Iterator item文件数据块最后被写入的时间
getFilename()获取当前Iterator item文件名(带扩展名)
getPathname()获取当前Iterator item路径名
getPath()获取当前Iterator item路径名和文件名
getGroup()获取当前Iterator item组ID
getOwner()获取当前Iterator item拥有者ID
getPerms()获取当前Iterator item权限
getSize()获取当前Iterator item文件大小
getType()获取当前Iterator item类型,可能是file,link or dir
getInode()获取当前Iterator item的inode节点号
文件时间戳解惑

touch()函数修改文件的更新时间

fileatime()函数返回文件因为读或写被打开的最后时间

filemtime()函数返回文件内容被修改的最后时间

filectime()函数返回文件内容或元数据被修改的最后时间

获取文件信息

通过stat()可以获取一个包含文件相关信息的数组,与此函数类似的是fstat()函数,这个函数以一个文件句柄作为参数(由fopen()或popen()返回),lstat()用来获取符号或文件连接的信息。

数字索引字符串索引说明
0dev设备号
1ino信息节点号
2mode保护模式
3nlink被连接数目
4uid所有者用户ID
5gid所在组ID
6rdev设备类型,如果是inode设备的话
7size文件大小的字节数
8atime上次访问的时间(Unix时间戳)
9mtime上次修改的时间(Unix时间戳)
10ctime上次改变的时间(Unix时间戳)
11blksize文件系统IO的块大小
12blocks所占据块的数目
修改文件权限

chmod()函数修改文件的权限

chown()函数修改文件的所有者

chgrp()函数修改文件所属组

注意:上述3个函数在Windows系统中无效
获取文件名各部分信息

basename()函数可以取得文件名,dirname()函数可以取得路径名,pathinfo()取得目录名、完整文件名、扩展名、文件名(即不带扩展名)的关联数组,键名分别是[dirname]、[basename]、[extension]、[filename]

常通过dirname(__FILE__)的组合来获取当前目录路径(物理路径,常用在引用其他PHP文件上)

删除文件

unlink()函数可以删除一个文件,如果删除失败将产生一个E_WARNING错误

提示:PHP5.0.0后此函数也可以用来删除远程文件,如FTP等
复制或移动文件

使用copy(old_dir,new_dir)函数可以复制文件,使用rename(old_dir,new_dir)移动文件,这里的new_dir是可以可以重命名文件名的。

转载于:https://www.cnblogs.com/hltswd/p/6279824.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值