Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php while fgetcvs函数-仅显示最后x行_Php_File_Get_Lines - Fatal编程技术网

php while fgetcvs函数-仅显示最后x行

php while fgetcvs函数-仅显示最后x行,php,file,get,lines,Php,File,Get,Lines,我有一个工作正常的代码: if (($handle = fopen("file.csv", "r")) !== FALSE) { while (($data = fgetcsv($handle, 0, "|")) !== FALSE) { echo $data[0].$data[1].$data[2]."<br />\n"; } fclose($handle); } 但它从file.csv获取所有内容,我只需要最后的x行。我尝试了slice方法等。提前感谢您的帮助

我有一个工作正常的代码:

if (($handle = fopen("file.csv", "r")) !== FALSE) {
   while (($data = fgetcsv($handle, 0, "|")) !== FALSE) {
   echo $data[0].$data[1].$data[2]."<br />\n";
   }
fclose($handle);
}

但它从file.csv获取所有内容,我只需要最后的x行。我尝试了slice方法等。提前感谢您的帮助。

如果命令行实用程序在您的路径上,那么您可以使用以下代码段:

$x=3; 如果$handle=popensprintftail-行=%d file.csv,$x,rb!==假的{ 而$data=fgetcsv$handle,0;;!==FALSE{ 回显$data[0]。$data[1]。$data[2]。\n; } fclose$handle; }
PHP函数fgetcsv总是一次解析一行。

难道你不能将每一行加载到一个数组中,而不是回显它,然后处理它吗?@user2483110:请更正问题的标题:csv而不是cvs。