How to install apcu in windows How to install apcu in windows php php

How to install apcu in windows


This short and straight to the point tutorial should help you

Install APCu on Windows

Assumptions

  • I assume that you know what is APC - Alternative PHP cache
  • You want to install APCu because APC is not compatible anymore with PHP 5.5.x
  • You want to install APCu for wamp, xampp. Mostly windows web development platforms for PHP

Instructions

Pre: All directory locations might be different for you depending on your wamp installation folder and your PHP/apache versions.

  1. Go to http://pecl.php.net/package/APCu, there is a table with available releases
  2. Choose whatever release suits you better (latest stable version that supports your php version)
  3. Choose package from DLL list, depending on what Windows you are using:
    • PHP version (5.5 in your case)
    • x64 (64 bits) OR x86 (32 bits windows)
    • Thread Safe (for Apache compatibility)
  4. Unzip the archive, copy php_apcu.dll in C:\wamp\bin\php\php5.5.6\ext.
  5. Go to C:\wamp\bin\apache\apache2.4.9\bin open php.ini and add the following lines (I just added them at the end of the file):

    [apcu]extension=php_apcu.dllapc.enabled=1apc.shm_size=32Mapc.ttl=7200apc.enable_cli=1apc.serializer=php

    This are recommended configurations located in INSTALL file from the php_apcu archive, excepting the location of the DLL file.

  6. Restart wamp

  7. Go to http://localhost/phpinfo.php and check if apcu configuration table appears and apcu is enabled
  8. If you also want to use apcu for PHP CLI then you only need to add in C:\wamp\bin\php\php5.5.6\bin\php.ini the config lines you added at step 5 in apache's php.ini.

The end!


For those who want APCu with backward APC compatibility (1:1 replacement without changing codebase, for example apc_cache_info > apcu_cache_info)

  1. Download php_apcu.dll from release page (choose proper PHP version, architecture and thread safety mode)

  2. Download php_apcu_bc.dll from PECL

  3. Save both files in ext dir under your PHP installation folder

  4. Load extensions in php.ini:

    extension=php_apcu.dllextension=php_apcu_bc.dll
  5. Configure APCu in php.ini

    [APCu]apc.enabled=1apc.shm_size=32Mapc.ttl=7200apc.enable_cli=1apc.serializer=php

INFO: APC extension with APCu-BC 1.0.3 must be named exactly php_apcu.dll in order to work. When I named it php_apcu_bc-1.0.3-7.1-ts-vc14-x86.dll XAMPP did not start properly (error about missing php_apc.dll)

Additional Note: the downloaded zip file from the source above for vc15 contained a file named php_apc.dll (in file: 'php_apcu_bc-1.0.4-7.2-ts-vc15-x86.zip' date: 13/06/2018) - just renaming it to php_apcu_bc.dll worked.


It matters if you use the thread safe or non thread safe version of the DLL. For me only the NTS worked in Windows 10 x64 and PHP 7.4 using the PHP built in server.It was confusing because the error msg PHP gave when run php -i was Unable to load dynamic library 'php_apcu.dll' (tried: ext\php_apcu.dll) as if the file was not there.