PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
发布:smiling 来源: PHP粉丝网 添加日期:2021-05-26 15:07:05 浏览: 评论:0
这篇文章主要介绍了PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例,本文讲解SplFileInfo用来获取文件详细信息、SplFileObject遍历、查找指定行、写入csv文件等内容,需要的朋友可以参考下。
PHP SPL中提供了SplFileInfo和SplFileObject两个类来处理文件操作。
SplFileInfo用来获取文件详细信息:
- $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接口 ,用于对文件遍历、查找、操作
遍历:
- 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 );
- }
Tags: SPL标准库 SplFileInfo SplFileObject
相关文章
- ·PHP SPL标准库 SplFixedArray 介绍及和Array的性能测试(2015-05-09)
- ·PHP SPL标准库之接口(Interface)详解(2021-05-26)
- ·PHP SPL标准库之SplFixedArray使用实例(2021-05-26)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)