Home Features Requirements Examples FAQ Contribute Documents Credits Contact


  • PHP version 5.2.0 or higher
  • PHP extension php_zip enabled *)
  • PHP extension php_xml enabled
  • PHP extension php_gd2 enabled (if not compiled in)

All part of the PHP package (zip) on http://www.php.net/downloads.php, should be enabled in php.ini

*) php_zip is only needed by PHPExcel_Reader_Excel2007, PHPExcel_Writer_Excel2007, PHPExcel_Reader_OOCalc. In other words, if you need PHPExcel to handle .xlsx or .ods files you will need the zip extension, but otherwise not.

Last edited Nov 20, 2009 at 6:54 AM by koyama, version 13


bloomingsmilez Aug 29 at 10:50 AM 
Is there any version of PHPExcel for PHP 5.1.6? I know everybody suggests upgrading the server but unfortunatley I can't do this right now and I need a quick-use solution.

I've tried working with PHPExcel but when I use PHPExcel_Style_NumberFormat::toFormattedString I get the error Call to undefined function date_create() in Classes/PHPExcel/Shared/Date.php because the function is not supported in PHP 5.1.6.

Thank you in advance!

Rolfgj Apr 29, 2013 at 11:31 AM 
How do i get the requried zip support at a IIS/PHP server. I am not able to find the requried .dll file.

hemadoubt Apr 2, 2013 at 1:59 PM 
can PHPExcel write password protected file in php? please help me

fedoen Feb 6, 2013 at 6:10 PM 
Fatal error: Class 'PHPExcel_Shared_ZipStreamWrapper'
Solved for linux users. I installed yiiexcel extension that rely on PHPExcel on windows xammp and it worked fine, but in linux I got this error.
I just changed the permissions for the files for others tho read, the defaults where no access so the web server couldn't load them. I hope this solves your problem.

MikeOropeza Dec 18, 2012 at 9:18 PM 
Hello, I am getting the next mistake:
PHP Fatal error: Class 'PHPExcel_Shared_ZipStreamWrapper' not found
project direction\Classes\PHPExcel\Autoloader.php on line 29
someone found a solution to this?, please, I need the solution, I would greatly appreciate, tank you

svapops Nov 5, 2012 at 4:51 PM 
. I'm having the same PHP Fatal error: Class 'XMLWriter' not found on linux. Reading excel is fine, but writing is failing due to this. i am too

pap716 Sep 25, 2012 at 7:19 AM 
can PHPExcel read password protected file? or can it run macros?

kyzzer Aug 11, 2012 at 2:56 AM 
is this phpexcel can read password protected file???

MarkBaker Apr 11, 2012 at 10:00 PM 
@budi - if you're exceeding time limit, then look at the myriad of comments and advice in various discussions

MarkBaker Apr 11, 2012 at 9:59 PM 
If 'PHPExcel_Shared_ZipStreamWrapper' can't be found, then you probably have another library autoloader that is clashing with PHPExcel's autoloader: PHPExcel is compliant with spl autoloader registration, ensure the autoloaders of any other libraries you use are also compliant

budi Mar 5, 2012 at 7:02 AM 
Hi, would you help me please...i have an error message when trying to read large excel file. the message is "Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\pa.net\sda-import.php on line 166"....tank you.

peddro1958 Feb 1, 2012 at 5:17 PM 
Please help
To import data from Excel 2003 using PHPExcel class, gives:
PHP Fatal error: Class 'PHPExcel_Shared_ZipStreamWrapper' not found in C:\wamp\www\pensionados\Classes\PHPExcel\Autoloader.php on line 29.
This extension enabled in PHP 5.3.5 php_zip, php_xml, php_gd2.
What can be wrong encoded.
Thank you.
(translated in google, I'm Chilean)

Bing_Dicklepuss Oct 21, 2011 at 12:09 PM 
@admina I am getting the same error as you. Have you found a solution to this?
PHP Fatal error: Class 'PHPExcel_Shared_ZipStreamWrapper' not found in /var/www/phpexcel/Classes/PHPExcel/Autoloader.php on line 29.
I am running Ubuntu 10.04. I downloaded the zip in Windows, unzipped it there, then transferred the unzipped folders/files to the Ubuntu machine by FTP.
I chmoded all the folders and files to correct permissions (rx for folders, r for files for others).

admina Oct 5, 2011 at 9:03 AM 
Hi ,I have fedora core 15 and it's php is 5.3.8 ,
all extension is enabled ,
but I got this error :
Fatal error: Class 'PHPExcel_Shared_ZipStreamWrapper' not found
would you please help me regarding this issue
Also when I use it on php 5.2.9 on another linux machine ,it works fine

antonio_carosi Oct 4, 2010 at 12:01 PM 
I've searched in pierre extensions repository, but I haven't found php_xml.dll.
Can somebody show another way to find that dll?


MarkBaker Oct 1, 2010 at 11:06 PM 
Wile PHPExcel may work quite well with PHP versions prior to 5.2.0, we can't guarantee that all features will work... but if it does what you need it to do, then it isn't a problem

tripexito Sep 29, 2010 at 3:41 PM 
I've tried PHPExcel with PHP 5.1.6 just to read/generate Excel 97/2003 files (.xls) and it's worked fine!

MarkBaker Sep 28, 2010 at 10:03 PM 
Many PHP distributions for Windows such as XAMPP, WAMPP, etc provide a wide range of extensions, and these can be enabled (if not by default) simply by uncommenting them in the php.ini file.
Since pecl4win vanished from the interweb 30 months ago, the only comprehensive repository for extension DLLs has been http://downloads.php.net/pierre/

antonio_carosi Sep 28, 2010 at 3:03 PM 
I have the same php_xml.dll problem too.
Where can WE find it? :)


MarkBaker Aug 20, 2010 at 10:51 AM 
@Don_Sevcik - Maintaining the directory structure is required, otherwise the autoloader cannot locate the files that it needs. The only alternative would be a phar package (only available for PHP5.3.3 I believe), and I'll look at making this available as a download option

Don_Sevcik Aug 9, 2010 at 12:54 AM 
Can we also get a download package that has everything in one neat clean folder with no subfolders and links?

Don_Sevcik Aug 8, 2010 at 6:21 PM 
I need more direction.

When installing this package, do we have to upload everything in the package including the Shared Folders, and all the subfolders, named exactly as they are in the package?

I'm getting this error:
Fatal error: Class 'PHPExcel_Shared_ZipStreamWrapper' not found in /hermes/bosweb/web140/b1404/sl.mathcele/public_html/PHPExcel.php on line 34

rakeshc4 Feb 24, 2010 at 8:02 AM 
I got the below error when i tried to read Excel 2007 File. In local system this is working fine.

Notice: Trying to get property of non-object in /home/apmweb/public_html/APMDev/test/Classes/PHPExcel/Reader/Excel2007.php on line 356

Warning: Invalid argument supplied for foreach() in /home/apmweb/public_html/APMDev/test/Classes/PHPExcel/Reader/Excel2007.php on line 356

In my local System Zip Library Version is 2.0.0

But In the Server Zip Library Version is 1.8.10

I think this might be the problem at the time of reading Excel 2007 File through PHP script.

Thanks & Regards


tayfusion Sep 25, 2009 at 12:24 PM 
The requirements state that PHP extension php_xml must be enabled. Please can someone let me know where php_xml can be found.

I think many have requested the same info and there are no answers out there. I'm having the same PHP Fatal error: Class 'XMLWriter' not found on linux. Reading excel is fine, but writing is failing due to this.

juliayan Aug 31, 2009 at 6:23 AM 
my local testing can dowload 01simple.xlsx as well.

but in executing, it does not similar as online test as small file dowloa windown prompt?

So the 01simple.xlsx save to test/01simple.xlsx

I am not sure this function provide windown prompt to operate file path ans name to be saved?

$objWriter->save(str_replace('.php', '.xlsx', __FILE__));

koyama May 13, 2009 at 2:14 PM 
@musras: You can read/write xls files using PHPExcel using a standard PHP installation. The extra requirements are needed if you want to read/write xlsx files.
As for one.com, last time I checked, they did not have the zip extension enabled, also there was a hard memory-limit of 24MB, but you better contact them directly and ask. At the moment, this is ok only for reading/writing small xls files with PHPExcel (and not xlsx).

musras May 13, 2009 at 2:48 AM 
What are the minimum requirements if *only* the Reader functionality is being used?

Anyone have experience with running PHPExcel on one.com server?

vadik56 Mar 6, 2009 at 3:48 AM 
If php_zip module is not available on your server then php wrapper for zip/unzip binaries can be used instead: https://sourceforge.net/project/showfiles.php?group_id=254316

peej228 Nov 2, 2008 at 1:55 AM 
Where is php_xml.dll located on the internet for download?

peej228 Nov 2, 2008 at 1:54 AM 
With download of php http://www.php.net/downloads.php (Get the php Zip Package) php_gd2.dll and php_zip.dll are located in the ext folder.

housj0am Jun 17, 2008 at 2:47 PM 
Do you know why exactly PHP 5.2.5 (or newer) is required? Is it a bug or a missing feature?

pmartin62 Apr 30, 2008 at 8:46 AM 
I confirm. With PHP 5.2.0 the XLSX is corrupted and don't open in Excel 2003. After an upgrade to PHP 5.2.5 everything works fine.

bs Apr 22, 2008 at 9:08 AM 
PHPExcel 1.60 doesn't work with PHP 5.2.
At least PHP 5.2.5 is required!

bwakkie Dec 20, 2007 at 9:53 AM 
also GD is needed in php
(not always compiled in)

modir Sep 20, 2007 at 1:12 AM 
There is another extention which is required. php_xml.

Else PHPExcel/Shared/XMLWriter.php (line 63) can not instantiate a XMLWriter object. It took me several hours to find the problem. It would have been great if there would have been an exception or an error message.