2016-03-30 4 views
2

csvのデータを含む行の総数をカウントしたい。 私は次のようでした:PHPを使用してcsvのデータを含む行をカウントする

<?php echo count(file('example.csv',FILE_IGNORE_NEW_LINES |` `FILE_SKIP_EMPTY_LINES)); ?> 

ここでは、すべての値が最初の列にのみある場合、出力は正しいです。例えば、 。 Row1Col1='a' & Row4Col1='b'O/P = 2正しい行のデータは

Row1->'a',Row2->'',Row3->'',Row4->'b' 

されているが、値が異なる列にあるならば、間違った出力を得るため。例えば、 。 Ro1Col3='a' & Row4Col1='b'O/P = 4間違った(正しい出力をしたい2さ)行のデータが

Row1->'a', Row2->',,' Row3->',,' Row4->'b'. 

おかげで、 Jaydeep

答えて

1

あるので、あなたはfunction.str_getcsv

にあなたのPHP関数を試みることができますfunction.array_filterを使用して、CSV内のnull個の要素を削除できます。

<?php 

    $csv_complete_contents = array_map('str_getcsv', file('example.csv')); 
    $csv_complete_filtered = array_filter(array_map('array_filter', $csv_complete_contents)); 
    $csv_num_rows = count($csv_complete_filtered); 

    echo $csv_num_rows; 

?> 
+0

ありがとうございました。 これは問題なく動作します。 –