用法:
$file = new SplFileObject("misc.txt", 'r+'); while (!$file->eof()) { echo $file->current(); $file->next(); } //关闭文件对象 $file = null;
常用文件处理方法:
/** * 获取文件指定行数范围数据 * @param unknown $filename 文件名称 * @param number $startLine 开始行 * @param number $endLine 结束行 * @param string $method * @return multitype: */ function getFileLines($filename, $startLine = 1, $endLine = 20, $method = 'rb'){ $content = array(); $count = $endLine - $startLine; $fp = new SplFileObject($filename, $method); $fp->seek($startLine - 1); // 转到第N行, seek方法参数从0开始计数 for ($i = 0; $i <= $count; ++$i) { $content[] = $fp->current(); // current()获取当前行内容 $fp->next(); // 下一行 if($fp->eof()) { array_pop($content); break; } } return array_filter($content); // array_filter过滤:false,null,'' } /** * 获取文章最后一行内容 * @param string $res 文件路径/名 */ function get_last_line($res) { $fp = fopen($res, 'r'); if (false == $fp) { return 'error'; } fseek($fp,-1,SEEK_END); $s = ''; while(($c = fgetc($fp)) !== false) { if($c == "\n" && $s) break; $s = $c . $s; fseek($fp, -2, SEEK_CUR); } fclose($fp); return $s; }
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。