我在Windows 7中安装了memcached二进制文件,并将其作为服务器启动。
当我键入wmic进程获取描述时,exetuablepath | findstr memcached.exe我得到了响应:命令行上的memcached.exe c:\ memcached \ memcached.exe。
当我尝试在php.net上运行示例代码时,我会访问我的浏览器:
致命错误:第3行的C:\ DocumentRoot \ Framework \ index.php中找不到类'Memcache'调用堆栈:0.0010 335928 1. {main}()C:\ DocumentRoot \ Framework \ index。 PHP:0
那么,我做错了什么呢?我正在使用memcache.dll,因为我认为Windows不存在memcached.dll?
答案 0 :(得分:13)
任何遇到使用memcached在Windows上工作的问题的人的注意事项。
答案 1 :(得分:3)
根据评论,我假设您没有下载并安装memcached,但已成功安装了PHP的memcached模块。基本上,你已经拿到了车钥匙,但没有车。
memcached是为Linux构建的,但它已被其他人移植到Windows。本教程已经过时了,但它可能正是您所需要的:http://www.codeforest.net/how-to-install-memcached-on-windows-machine
答案 2 :(得分:3)
这是为了未来的游客!
你可以获得php扩展“memcache”来在这里的Windows上使用memcached和php http://downloads.php.net/pierre/
Memcached是服务器守护程序,你可以在这里获取它http://splinedancer.com/memcached-win32/
答案 3 :(得分:0)
您的new FileOutputStream(file, false);
中应该列出composer.json
,但它不会安装,如果丢失,它只会抛出一个错误。这里有多种获取方法:
截止到2018年,AFAIK没有用于PHP 7的JUST Memcached二进制Windows端口 但是Laragon或Winginx中有一个预打包的版本
有handful人在github上提供compiled DLLs(64位,并提供线程安全)
ext-memcached
如果使用ubuntu
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt install php-memcached
,请重新启动php fpm
You can compile the php bindings,但windows package of memcached已被破解4年(截至2018年)
这是围绕Memcached的肮脏包装,称为StaticCache,您可以在紧急情况下使用它来从磁盘读取/写入值。它显然比memcached慢得多,因此它只不过是Windows开发的入门。如果您喜欢,可以将其定义为同名的polyfill
sudo service php7.2-fpm restart