跳过PHP中CSV的前3行
我有一个readCSV函数,现在跳过第一行,但我需要它跳过前三行 实现这一目标的首选方式是什么跳过PHP中CSV的前3行,php,csv,Php,Csv,我有一个readCSV函数,现在跳过第一行,但我需要它跳过前三行 实现这一目标的首选方式是什么 function readCSV($csvFile){ $file_handle = fopen($csvFile, 'r'); while (!feof($file_handle) ) { $array = fgetcsv($file_handle, 'r', ';'); $line_of_text[] = array('dato'=>$array[0],'vs
function readCSV($csvFile){
$file_handle = fopen($csvFile, 'r');
while (!feof($file_handle) ) {
$array = fgetcsv($file_handle, 'r', ';');
$line_of_text[] = array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]));
}
fclose($file_handle);
return $line_of_text;
}
$csvFile = 'http://some.file.csv';
使用计数器跟踪已处理的许多行:
function readCSV($csvFile){
$file_handle = fopen($csvFile, 'r');
$counter = 0;
while (!feof($file_handle) ) {
if($counter < 3){
$array = fgetcsv($file_handle, 'r', ';');
$line_of_text[] = array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]));
}
$counter++
}
fclose($file_handle);
return $line_of_text;
}
函数readCSV($csvFile){
$file_handle=fopen($csvFile,'r');
$counter=0;
而(!feof($file_handle)){
如果($counter<3){
$array=fgetcsv($file_handle,'r',';');
$line_of_text[]=array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]);
}
美元柜台++
}
fclose($file\u handle);
返回\u文本的$line\u;
}
保留一个计数器以计数循环内处理的行,仅当计数器大于3时才执行操作 例如:
function readCSV($csvFile){
$counter = 0;
$file_handle = fopen($csvFile, 'r');
while (!feof($file_handle) ) {
if($counter > 3){
$array = fgetcsv($file_handle, 'r', ';');
$line_of_text[] = array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]));
}
$counter++;
}
fclose($file_handle);
return $line_of_text;
}
$csvFile = 'http://some.file.csv';
你可以在循环之前调用
fgets($file\u handle)
三次。保留一个计数器来计算循环中处理的行数,只在计数器大于3时才执行操作。对@coderodour你能解释一下你的代码哪一部分跳过了第一行吗?@AlexHowansky谢谢,这很好。我喜欢其他答案中提供的例子,但我没有做到这一点。循环前的简单3 x FGET工作正常。