I am trying to import a CSV file. Due to the program we use, the first row is basically all headers that I would like to skip since I've already put my own headers in via HTML. How can I get the code to skip the first row of the CSV? (the strpos command is to cut off the first field in all the rows.)
<?php $row = 1; if (($handle = fopen("ptt.csv", "r")) !== FALSE) { while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $num = count($data); $row++; for ($c=0; $c < $num; $c++) { if(strpos($data[$c], 'Finished') !== false) { $c++; echo "<TR> <TD nowrap>" . $data[$c] . "</ TD>"; } Else{ echo "<TD nowrap>" . $data[$c] . "</ TD>"; } } } fclose($handle); } ?>
FALSE) { // fgets() Gets a line from file pointer and read the first line from $handle and ignore it.
The first row is only mandatory when the import template has the setting use "Use column headers as configuration" enabled. However having the first row in the CSV file helps knowing what data is in the file.
Rather than using if condition for checking whether it is the first row, a better solution is to just add an extra line of code before the line from where the while loop starts as shown below :
.... ..... fgetcsv($handle);//Adding this line will skip the reading of th first line from the csv file and the reading process will begin from the second line onwards while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { ....... .......
It is just as simple......
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With