Creating Excel Files with PHP

Posted on 2004-08-25
Last Modified: 2008-02-01
I want to be able to create excel files with my php code and have the excel file saved to a location on the server.
I won't want it opening into excelon the users side I just want to create the excel file on the server side and have it stored somewhere.

Does anyone know of a tutorial on how to do this?


Question by:unreal400
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Expert Comment

ID: 11894983
I looked into doing that for a little while, it didn't really work
If you're just handling data, why not just make a  csv?  Excel can read csv just fine (comma separated values)
LVL 33

Expert Comment

ID: 11895076
It's possible, but as pjargon says, seems prone to errors.  If you want to try it anyway, here's a couple places to look:

Author Comment

ID: 11895095
Whats the easiest way to write out the files to the server.  I've never worked with creating files. just creating the webpages with php.  Can you point me to an example.
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Expert Comment

ID: 11895204
Should be pretty simple file output, yes?
thx google:

You may have to mess with permissions
LVL 11

Expert Comment

ID: 11898067
I have found the easiest is a TAB delimted file.
Since sometimes values need to contain a ','
LVL 10

Expert Comment

ID: 11899826
if you save everything into arrays, you can then write them to a file using serialize

and read them using unserialize

Expert Comment

by:Boris Aranovich
ID: 11900615
About writing to a file - directly from help on fwrite():

$filename = 'test.txt';
$somecontent = "Add this to the file\n";

// Let's make sure the file exists and is writable first.
if (is_writable($filename)) {

   // In our example we're opening $filename in append mode.
   // The file pointer is at the bottom of the file hence
   // that's where $somecontent will go when we fwrite() it.
   if (!$handle = fopen($filename, 'a')) {
        print "Cannot open file ($filename)";

   // Write $somecontent to our opened file.
   if (!fwrite($handle, $somecontent)) {
       print "Cannot write to file ($filename)";
   print "Success, wrote ($somecontent) to file ($filename)";
} else {
   print "The file $filename is not writable";
LVL 25

Expert Comment

by:Marcus Bointon
ID: 11903017
Commas inside fields is not a problem with CSV, because field content is usually quoted, thus escaping the commas. In some instances it will even allow line breaks inside fields. CSV for excel works very nicely as long as you're not doing anything that's excel specific, like drawing graphs or running macros, and is very simple to do. I generate Excel-tagged CSV for downloads - the important thing is to give it the correct MIME type for it to be picked up by Excel, which is application/msexcel.

Expert Comment

ID: 11918888

Accepted Solution

laurenty earned 50 total points
ID: 11927710
I generate Excel files from PHP all the time and use the PEAR  Spreadsheet_Excel_Writer. It does a very nice job and has some very useful functions that simplifying the whole process of generating/writing/sending the excel file.


Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Popularity Can Be Measured Sometimes we deal with questions of popularity, and we need a way to collect opinions from our clients.  This article shows a simple teaching example of how we might elect a favorite color by letting our clients vote for …
This article discusses how to implement server side field validation and display customized error messages to the client.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

691 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question