Heim  >  Artikel  >  Backend-Entwicklung  >  PHP SPL标准库之文件操作_PHP教程

PHP SPL标准库之文件操作_PHP教程

WBOY
WBOYOriginal
2016-07-13 09:54:131048Durchsuche

PHP SPL标准库之文件操作

   这篇文章主要介绍了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 );

  }

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/998358.htmlTechArticlePHP SPL标准库之文件操作 这篇文章主要介绍了PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例,本文讲解SplFileInfo用来获取文件详细信息、...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn