这是我用来获取X行和Y行之间的行的代码:
$files = new SplFileObject($filename);
$fileIterator = new LimitIterator($files, 1800, 2000);
我想从 200 到 1800 获得 2000 行。但是,当我打印数组时,它显示 2000 行。那么,我做错了什么?
第二个参数是计数,您希望200
不要2000
$fileIterator = new LimitIterator($files, 1799, 200);
您可以从限制迭代器文档中检查它:
public __construct ( Iterator $iterator [, int $offset = 0 [, int $count = -1 ]] )
还要考虑到offset
从 0 开始,所以如果你想要1800th
行,你需要使用 1799
当您查看文档时,您可以看到第二个参数是计数而不是结束行。
public __construct ( Iterator $iterator [, int $offset = 0 [, int $count = -1 ]] )
http://php.net/manual/en/class.limititerator.php
$fileIterator = new LimitIterator($files, 1800, 200);
所以你需要这样的东西。