I can't seem to find the MemcacheD extension for PHP.
There are a few compilations of php_memcache.dll, but that's not the same.
The main thing I'm missing is getMulti(), which doesn't exist in Memcache.
So far I found this, but there's no DLL:
http://pecl.php.net/package/memcached
To enable the PHP Memcache extensions, you need to build PHP utilizing –enable-Memcache option when building, and configure it from the source. On Debian-based dispersions, you can use the php-Memcache package. To set global runtime configuration choices, specify the configuration option values within your php.
You can look at phpinfo() or check if any of the functions of memcache is available. Ultimately, check whether the Memcache class exists or not. e.g. if(class_exists('Memcache')){ // Memcache is enabled. }
Officially - it does not exist. There are several people who have created their own DLL's though. Here is one person's blog who has created the dll:
http://trondn.blogspot.com/2010/07/libmemcached-on-win32.html
Here is a link to the repository with the source so you can build your own DLL for memcached:
http://bazaar.launchpad.net/~trond-norbye/libmemcached/mingw32/files
I know the memcached has some other features but its interface is nearly identical with that of memcache extension. You can very easily get away with such code and in my case it works perfectly well. If you don't have the memcached loaded create this file:
<?php
class Memcached {
const OPT_LIBKETAMA_COMPATIBLE = true;
const OPT_COMPRESSION = true;
const OPT_NO_BLOCK = true;
//if you code relies on any other constants define them to avoid
//undefined constant notice
//http://www.php.net/manual/en/memcached.constants.php
public $_instance;
public function __construct() {
$this->_instance = new Memcache;
}
public function __call($name, $args) {
return call_user_func_array(array($this->_instance, $name), $args);
}
public function setOption() {}
}
Either include it or configure autoloader to pick it up. Of course you'll need a properly configured memcache instance and addServer calls but such calls should already be in the code if the codebase assumes Memcached. I hope it helps someone/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With