加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例

发布时间:2020-12-13 02:36:21 所属栏目:PHP教程 来源:网络整理
导读:《:PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例》要点: 本文介绍了:PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例,希望对您有用。如果有疑问,可以联系我们。 PHP SPL中提供了SplFileInfo和SplFileObject两个类来处置文件操作

《:PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例》要点:
本文介绍了:PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例,希望对您有用。如果有疑问,可以联系我们。

PHP SPL中提供了SplFileInfo和SplFileObject两个类来处置文件操作.PHP教程

SplFileInfo用来获取文件具体信息:PHP教程

代码如下:

$file = new SplFileInfo('foo-bar.txt');
?
print_r(array(
??? 'getATime' => $file->getATime(),//最后拜访时间
??? 'getBasename' => $file->getBasename(),//获取无路径的basename
??? 'getCTime' => $file->getCTime(),//获取inode修改时间
??? 'getExtension' => $file->getExtension(),//文件扩展名
??? 'getFilename' => $file->getFilename(),//获取文件名
??? 'getGroup' => $file->getGroup(),//获取文件组
??? 'getInode' => $file->getInode(),//获取文件inode
??? 'getLinkTarget' => $file->getLinkTarget(),//获取文件链接目标文件
??? 'getMTime' => $file->getMTime(),//获取最后修改时间
??? 'getOwner' => $file->getOwner(),//文件拥有者
??? 'getPath' => $file->getPath(),//不带文件名的文件路径
??? 'getPathInfo' => $file->getPathInfo(),//上级路径的SplFileInfo对象
??? 'getPathname' => $file->getPathname(),//全路径
??? 'getPerms' => $file->getPerms(),//文件权限
??? 'getRealPath' => $file->getRealPath(),//文件绝对路径
??? 'getSize' => $file->getSize(),//文件大小,单位字节
??? 'getType' => $file->getType(),//文件类型 file? dir? link
??? 'isDir' => $file->isDir(),//是否是目录
??? 'isFile' => $file->isFile(),//是否是文件
??? 'isLink' => $file->isLink(),//是否是快捷链接
??? 'isExecutable' => $file->isExecutable(),//是否可执行
??? 'isReadable' => $file->isReadable(),//是否可读
??? 'isWritable' => $file->isWritable(),//是否可写
));

SplFileObject继承SplFileInfo并实现RecursiveIterator,SeekableIterator接口,用于对文件遍历、查找、操作PHP教程

遍历:
PHP教程

代码以下:

try {
??? foreach(new SplFileObject('foo-bar.txt') as $line) {
??????? echo $line;
??? }
} catch (Exception $e) {
??? echo $e->getMessage();
}

查找指定行:
代码以下:

try {
??? $file = new SplFileObject('foo-bar.txt');
??? $file->seek(2);
??? echo $file->current();
} catch (Exception $e) {
??? echo $e->getMessage();
}

写入csv文件:
代码以下:

$list? = array (
??? array( 'aaa',? 'bbb',? 'ccc',? 'dddd' ),
??? array( '123',? '456',? '7891' ),
??? array( '"aaa"',? '"bbb"' )
);
?
$file? = new? SplFileObject ( 'file.csv',? 'w' );
?
foreach ( $list? as? $fields ) {
??? $file -> fputcsv ( $fields );
}

《:PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例》是否对您有启发,欢迎查看更多与《:PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读