Reading .CSV file in PHP
By: David Sklar
You have data in comma-separated values (CSV) format, for example a file exported from Excel or a database, and you want to extract the records and fields into a format you can manipulate in PHP.
If the CSV data is in a file (or available via a URL), open the file with fopen( )and read in the data with fgetcsv( ). This prints out the data in an HTML table:
$fp = fopen('sample2.csv','r') or die("can't open file"); print "<table>\n"; while($csv_line = fgetcsv($fp,1024)) { print '<tr>'; for ($i = 0, $j = count($csv_line); $i < $j; $i++) { print '<td>'.$csv_line[$i].'</td>'; } print "</tr>\n"; } print '</table>\n'; fclose($fp) or die("can't close file");
The second argument to fgetcsv( ) must be longer than the maximum length of a line in your CSV file. (Don't forget to count the end-of-line whitespace.) If you read in CSV lines longer than 1K, change the 1024 used in this recipe to something that accommodates your line length.
You can pass fgetcsv( ) an optional third argument, a delimiter to use instead of a comma (,). Using a different delimiter however, somewhat defeats the purpose of CSV as an easy way to exchange tabular data.
Don't be tempted to bypass fgetcsv( ) and just read a line in and explode()on the commas. CSV is more complicated than that, in order to deal with embedded commas and double quotes. Using fgetcsv( ) protects you and your code from subtle errors.
Archived Comments
1. I must say the blog post is just useful for everyone else reading it because the information and kno
View Tutorial By: Intraday tips at 2013-12-03 08:43:29
2. excellent, thanks a lot..............
View Tutorial By: yellareddy at 2013-03-12 06:56:12
3. very usefull i have found simple and nice code here shows read and write operations on csv
ht
View Tutorial By: sourabh at 2013-01-31 06:47:58
4. Great!!!!!!!!!!!!!!!!!!!!
View Tutorial By: Raghbendra Nayak at 2012-03-28 12:54:35
5. is there any way to get the coloumn names of csv files
View Tutorial By: martin at 2011-10-16 09:16:22
6. Great tip... I am currently using it on my site - www.lifeisdelightful.com and it works like a charm
View Tutorial By: Admin at 2011-08-30 12:13:03
7. i want excel file upload and stored into database and genreat pdf in php
View Tutorial By: excel file upload and genreat pdf in php at 2011-07-25 08:24:50
8. Thank you very much for this tip.
View Tutorial By: Lise at 2011-07-15 13:27:23
9. thank for this
View Tutorial By: ankit at 2011-07-15 06:48:21
10. great thanks a lottttttttttttttttt
View Tutorial By: reshma at 2011-06-13 04:35:44
11. Really just brilliant...thanks
View Tutorial By: Ash Singh at 2011-02-21 04:47:20
12. Nice Script,
It really works for me and saved lots of time
Thanks
View Tutorial By: Avi at 2010-09-11 02:25:22
13. This works great.. :)
thanks a lot
View Tutorial By: Ravi at 2010-07-03 23:34:46
14. i want to know how to read a file inside zipfile.
for eg. i want to read csv from a zipfile w
View Tutorial By: iman at 2009-11-26 12:50:21
15. Many many thanks. It is very very helpful. Again thanks many many....
View Tutorial By: Mehedi Hasan at 2009-09-15 21:41:51
16. thank for this script
because i will work in my mca project
View Tutorial By: r at 2009-06-27 05:07:31
17. Thanks for this tip -
I'm currently working on a project and have found this tip very handy.
View Tutorial By: Helen at 2009-06-16 05:28:24
18. It's very very useful for me. thank you.
View Tutorial By: thirumalai at 2009-01-28 03:25:25
Comment on this tutorial
- Data Science
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
PHP convert string to lower case
PHP code to write to a CSV file for Microsoft Applications
PHP code to write to a CSV file from MySQL query
PHP code to import from CSV file to MySQL
Password must include both numeric and alphabetic characters - Magento
Error: Length parameter must be greater than 0
PHP file upload prompts authentication for anonymous users
PHP file upload with IIS on windows XP/2000 etc
Multiple File Upload in PHP using IFRAME
Resume or Pause File Uploads in PHP
Exception in module wampmanager.exe at 000F15A0 in Windows 8