这几天开发PHP Memcache遇到了这个奇葩的问题。Memcache环境安装成功但是运行代码总是报错
$mem = new Memcache();
$mem->connect('127.0.0.1',11211);
$mem->set("foo","3",0,10);
echo $mem->get("foo");
运行提示PHP Fatal error: Class ‘Memcache’ not found in /Users/xxxxxxxxx/demo/index.php on line 9
最后动用百度、google和自己各种实验终于找到了问题的原因:
代码运行中没有找到对应的memcache.so文件导致
解决方法
1、安装memcache
brew search memcache
找到对应自己电脑上安装php版本对应的memcache(注意:不是memcached)
使用brew安装
brew install php56-memcache
安装完成后会查看php56-memcache的安装目录
2、配置php.ini
在php.ini最后添加
extension_dir = /usr/local/Cellar/php56-memcache/2.2.7
extension = memcached.so
最后重新运行,你会发现神奇的一幕:运行成功