PHP 5.4.0 x64 (64 Bit) for Windows

PHP 5.4.0 was released on March 1, 2012. Check out the release announcement here if you haven’t already, to learn about major changes and new features.

Here are the 64 bit thread safe and non thread safe binaries for Windows that many of you have been waiting for. As usual they were compiled with Visual C++ 2008 and they were compiled against latest versions of OpenSSL (1.0.1) and ICU (49.1.1). I was very busy last month and as a result I was unable to compile and post these earlier.

Download

VC9 x64 Thread Safe

php-5.4.0-Win32-VC9-x64.zip (Mirror 1) (Mirror 2)

CRC32: C5FB3AD6
MD5: AB85C5B1567FD7CD5CA3973A69735F02
SHA-1: 3B8AB2F3F14799B6997C961FBABFF90580884A7E

VC9 x64 Non Thread Safe

php-5.4.0-nts-Win32-VC9-x64.zip (Mirror 1) (Mirror 2)

CRC32: 71F00AA7
MD5: 81107ACA658795A3245590AFA134E167
SHA-1: C3CD37124E7ED699290D76CF3D6C4527EDD37BAC

Additional Extensions

There are extensions which are currently not compatible with PHP 5.4. eAccelerator and WinCache are good examples. I am not sure if eAccelerator will ever be updated to be compatible with PHP 5.4 but a compatible version of WinCache will be released soon according to this post on forums.iis.net.

Anyway, I will compile all the extensions for PHP 5.4 that I have previously compiled for PHP 5.3. That is if they are compatible of course. And as usual, they will be available in the following mediafire folder – http://www.mediafire.com/php-win64-extensions.

Currently only the APC extension is available. I will compile and upload the other extensions soon.

Related Posts:

You can follow any comments to this entry through the RSS feed. You can leave a comment, or trackback from your own site.

49 Comments

  • Hello, thank you for your releases.

    I’ve got a problem with your
    apache_2.4.1-x64-openssl-1.0.0g.msi + php-5.4.0-Win32-VC9-x64.zip

    Any request (, for example) causes apache crash and the page with script shows for half-second, then browser show “error displaying page”
    This error probability is like 90% of all requests for my local webserver, it’s very annoying.
    Does anyone have problems like that? any clues?
    (system is Win7 x64 Pro, loaded ext: mysql, mysqli, mbstring (i’ve turned off all other.. these are REALLY required))

    sorry for my english, it’s not my native language

  • I keep getting the error:

    “Init: Session Cache is not configured [hint: SSLSessionCache]”

    Any ideas what I’m missing?

  • Hi, APC 3.1.10 has been released and there is a fix for annoying bug #23822 (php crashes on apache restart).. thanks for x64 version

  • yeah I think there is something wrong with this version/build.
    i kept getting connection resets/index.php wouldnt load.

    going back to 5.3.10

  • Hello,
    Thank you for your job !

    But like Goover, PHP 5.4.0 crach lot of time with Apache 2.2.22 64b.
    Extensions mysql, mysqli, mbstring et bz.

    And idem, I’m not english native, so bad english for me ! πŸ™‚

  • Groover,

    I think yiu have similar problem to mine. GD2 extension isn’t working correctly and crashes HTTP requests, maybe recompilation would fix it…

  • I am having the exact same problem as Goover in Win7 x64 with apache2.4 x64 and php5.4.0 x64. At first, I haven’t noticed the momentary display of the page, but then I switched to php5.3.10 x64, saw that it was working fine, switched back to 5.4.0 and refreshed my phpinfo page. I saw the 5.4.0 version displayed very shortly (for a second or less) and then got a “Problem loading page” error.

  • …I see nothing alarming in my error log and I’d like to also add that after each refresh, the exact error I see in the browser (firefox) is:

    The connection was reset
    The connection to the server was reset while the page was loading.

  • Hello.
    I’m first time trying to use your packages. I was able to connect this PHP2.4 to your Httpd2.4.1, but it doesn’t load MySQL extension (functions are undefined), saying “PHP Warning: PHP Startup: in Unknown on line 0” several times. However, phpinfo states that mysqlnd is loaded.
    The only configuration I’ve done was move docroot of httpd to another place, specify session dir for php and enabling mysql extension.
    Could you, please, point, where should I look, to resolve the problem? May I miss some VC redist?

  • Hi,
    New works for Anindya : PHP 5.4.1 and PHP 5.3.11

    I do not understand why “PHP” does not provide Windows binaries 64bit versions while MySQL and Apachelounge do.

    Thanks

  • When I combine your PHP 5.4 with my own compilation of php_ffmpeg.dll, it will not load. Mismatch in API: you are using 20100525 and my VC9 uses 20090626. Did you use VC2010?

  • Massive thank you for the hard work put in, Groover points out an interesting bug that i myself suffered on WIn 7 64 using the php/apache from here, same issue my forum would continually trip apache when code tags were used and other odd balls, basically an error log full of restart codes and i never did find out what was the culprit much to my disgust lol; Anyway back on topic it seems the mediafire folder for the php5.4 64 bit extensions seems to be gone now, i ‘ll check back some time as i plan to update my windows setup soon, i moved to Ubuntu so i could have a stable webserver as the crashes were just to much.

  • Words aren’t enough to express my gratitude. Thanx for all your hard work and all the effort you put in this!

    Can you please consider compiling Uploadprogress as a x64 extension as well? Thanx in advance πŸ˜‰

  • @Goover, @name, @Daweb, @luke, @klonos, @Ptits and @Mindless

    I will compile PHP 5.4.3 most likely by tomorrow or day after and hopefully the problems you have described won’t be present in that build. πŸ™‚

    @Deano

    I hope you figured out by now that you had to enable the “socache_shmcb” module (mod_socache_shmcb.so).

    @Jesper

    Sure, I will compile the pdflib extension for PHP 5.4 as soon as possible.

    @ohm

    I think the php_mssql extension is not compatible with PHP 5.4 since it’s disabled in the official builds too. For PHP 5.3.10, I compile the php_dblib extension which can be used in place of the php_mssql extension, but even the dblib extension failed to compile for PHP 5.4.

    But if you can send me the development libraries and headers for compiling the mssql extension, then I can try compiling it. I believe I need the following files to compile it – sqldb.h, sqlfront.h and ntwdblib.lib.

    @lolo and @Jan Ehrhardt

    Will compile the wincache extension as soon as possible.

    @Otomatic and @zmcjs

    I will compile PHP 5.4.3 and 5.3.13 most likely by tomorrow or day after.

  • Thanks for providing windows x64 php builds. They are so much help in making php more usable on windows.

    I am trying to find a php 5.3 vc9 x64 ts build of the uploadprogress.dll module

    Can anyone help me with this?

    Thanks in advance.

  • Hi, I am struggling to connect PHP 5.4.3 TS 64 bit (within WAMP) to MS SQL Server 2012. Seems the various php_sqlsrv*.dll’s on offer won’t load, e.g.

    PHP Warning: PHP Startup: Unable to load dynamic library ‘c:/wamp/bin/php/php5.4.3/ext/php_pdo_sqlsrv_30_54_ts_vc9x86.dll’ – %1 is not a valid Win32 application.\r\n in Unknown on line 0

    I have replaced the php_curl.dll that came with WAMP with your php_curl-5.4.3-VC9-x64 and that works, so I am kind of hoping you may have a solution for SQL Server somewhere as well.

    Many thanks for the curl solution!

  • @William Nettmann

    You cannot use 32 bit version of sqlsrv extension with 64 bit PHP. And unfortunately it is currently not possible to compile a 64 bit version of the sqlsrv extension. If you need to use the sqlsrv extension, then you will have to use the official 32 bit PHP builds.

    You can also try asking the developers of the extension to update the code so that a 64 bit version can be compiled. If many show interest in a 64 bit version, I am sure they will update the code. Try asking here I guess – http://social.msdn.microsoft.com/Forums/en/sqldriverforphp/threads.

  • @Anindya: Thanks for the advice. The Microsoft site doesn’t specify if the drivers are 32 or 64 bit, which has made life complicated.

    We have changed to 32 bit PHP and all seems OK now.

  • Which APC do I install?

    I installed php-5.3.15-Win32-VC9-x64.zip I have tried all of the php5.3 versions.

  • @Jeff

    Apologies for the extremely late reply. I hope you got APC to work by now. If not, you can try the newer versions that I will be compiling soon.

    @David Vannucci

    I did not modify the php.ini-production file. And here’s what I see in the latest php.ini-production file.

    ; short_open_tag
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off

  • @David: It is better by far to not use short opening tags to ensure portability of code. I have had issues in the past which led me to this view.

  • Great work! It”s pretty hard to find x64 builds for php extensions!

    However, when i try to load your (both ts and nts) php_imagick.dll in php 5.4, it writes “PHP Warning: PHP Startup: Unable to load dynamic library ‘ext/php_imagick.dll’ – The specified module could not be found.” to my log.

    I’ve already tried to change the extension dir to ext/, ./ext/, ext\, .\ext\, ext\\ and .\\ext\\
    The other extensions are being enabled / disabled by changing the php.ini file, so i”m sure i use the right php.ini file.
    The PHP directory is already in the PATH var.
    The IUSR and ISS_IUSRS have access to all required folders.

    My configuration
    OS: Windows 7 Ultimate x64 SP1 (build 7601)
    WS: Microsoft-IIS/7.5
    PHP: PHP 5.4.0 x64 NTS (yours, CGI mode)
    PHP installation dir: “C:\Program Files\PHP\” (i am aware of the white space, this is possible by putting paths between quotes)
    PHP configuration file: “C:\Program Files\PHP\php.ini” (verified by phpinfo)

  • Hello,

    Thank you Anindya for the x64 versions.

    I am getting unexpected results with the thread safe version on a 64bit Windows 7.
    When I check the variable PHP_INT_SIZE I get 4 instead of 8, indicating I’m still in a 32bit environment.
    At first I thought it was Apache, but I get the same unexpected result from php.exe in command line mode.
    I have also tried the official 64bit (VC11 from http://windows.php.net/qa/), but I also get the unexpected result.

    Am I doing something wrong ? Do I need to explicitly tell PHP to run in 64bit mode ?

    Any help would be highly appreciated.

    Best regards

Leave a Reply to Jan Ehrhardt