从php中的CSV文件中删除空白ROWS [英] Remove Blank ROWS from CSV files in php
本文介绍了从php中的CSV文件中删除空白ROWS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否可以从CSV文件中删除所有空白ROWS?
我试图计算CSV文件中的所有行,但想排除不包含特定列或整行的值。
这是我用来计算行的时间。
$ import = file($ target_path,FILE_SKIP_EMPTY_LINES);
$ num_rows = count($ import);
echo $ num_rows;
示例:
code> Jun,Bronse,137 Raven,Princeton,TX,75407,2147088671,Nell @ Gmail.Com,1990,CHEVROLET,K1500 ,,
,,,,,,,,,,,, b $ b ,,,,,,,,,,,,, b $ b ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, b $ b Nella,Brown,111 Venna St,Princeton,TX,75407,2147177671 ,lakb @ Gmail.Com,1993,CHEVROLET,K1500 ,,
Jun,Bronse,137 Raven,Princeton,TX,75407,2147088671,Nell @ Gmail.Com,1990,CHEVROLET,K1500 ,,
,,,,,,,,,,,,,
Jun,Bronse,137 Raven,Princeton,TX,75407,2147088671,Nell @ Gmail.Com,1990,CHEVROLET,K1500 ,,
解决方案
$ lines = file csv,FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES);
$ num_rows = count($ lines);
foreach($ lines as $ line){
$ csv = str_getcsv($ line);
if(empty($ csv [SPECIFIC_COLUMN])){
$ num_rows--;
}
}
如果您不想检查特定列,但只是过滤出所有列都为空的行,将其更改为:
if(count(array_filter($ csv)) == 0){
Is it possible to remove all blank ROWS from a CSV file?
I'm trying to count all rows from a CSV file but would like to exclude lines that doesn't contain a value on a specific column or the whole row.
This is what I'm using to count the rows as of the moment.
$import = file($target_path, FILE_SKIP_EMPTY_LINES); $num_rows = count($import); echo $num_rows;
sample:
Jun,Bronse,137 Raven,Princeton,TX,75407,2147088671,Nell@Gmail.Com,1990,CHEVROLET,K1500,, ,,,,,,,,,,,, ,,,,,,,,,,,, ,,,,,,,,,,,, Nella,Brown,111 Venna St,Princeton,TX,75407,2147177671,lakb@Gmail.Com,1993,CHEVROLET,K1500,, Jun,Bronse,137 Raven,Princeton,TX,75407,2147088671,Nell@Gmail.Com,1990,CHEVROLET,K1500,, ,,,,,,,,,,,, Jun,Bronse,137 Raven,Princeton,TX,75407,2147088671,Nell@Gmail.Com,1990,CHEVROLET,K1500,,
解决方案$lines = file("test.csv", FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES); $num_rows = count($lines); foreach ($lines as $line) { $csv = str_getcsv($line); if (empty($csv[SPECIFIC_COLUMN])) { $num_rows--; } }
If you don't want to check a specific column, but just filter out rows where all columns are empty, change it to:
if (count(array_filter($csv)) == 0) {
这篇关于从php中的CSV文件中删除空白ROWS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文