php 如何在WAMP中启用memcache

olmpazwi  于 2022-11-21  发布在  PHP
关注(0)|答案(8)|浏览(146)

如何在WAMP中安装memcache?
我在php.ini中找不到任何php_memche。
我现在该怎么办?
@瑞安
谢谢你的步骤,现在memcache在WAMP中启用,我也在PHPINFO中交叉检查了。memcache正在显示。
我试过下面的memcache示例。但抛出错误。

<?php

$memcache = new Memcache;
$memcache->connect('localhost:8085', 11211) or die ("Could not connect");

$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;

$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";

$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";

var_dump($get_result);

?>

获取以下通知错误。

( ! ) Notice: Memcache::getversion() [memcache.getversion]: Server localhost:8085 (tcp 11211) failed with: Malformed version string (0) in C:\wamp\www\memcache\sample.php on line 7

我错过了什么...

vkc1a9a2

vkc1a9a21#

以下是对我有效的步骤:

所需文件

1.将MSVCP71.DLLmsvcr71.dll复制到C:\windows\sysWOW64
1.将memcached.exe复制到C:\memcached
1.单击窗口-键
1.类型:CMD
1.按下:Ctrl-Shift-Enter
1.选择yes
1.类型:C:\memcached\memcached.exe -d install
1.类型:C:\memcached\memcached.exe -d start
1.将php_memcache.dll复制到C:\wamp\bin\php\php5.3.4\ext
1.使用Wamp控件重新启动Apache
1.启用WAMP -〉PHP -〉PHP扩展-〉php_memcache

e5nqia27

e5nqia272#

如果您运行的是64位WAMP:
通用服务和扩展将不适用于您。
安装64位memcached服务:
http://s3.amazonaws.com/downloads.northscale.com/memcached-win64-1.4.4-14.zip
以及以下PHP扩展之一(与您的PHP版本相匹配):
Php 5.3:一个字符串
Php 5.4:一个文件夹
适用于Php 5.4的32位版本:http://windows.php.net/downloads/pecl/releases/memcache/3.0.6/php_memcache-3.0.6-5.4-ts-vc9-x86.zip

plicqrtu

plicqrtu3#

我在这个问题上纠结了一阵子,所以我决定写下我的答案:
第1步:从这个网站下载与您的PHP版本和wamp版本(32位或64位)兼容的正确的软件包:
Link for download site
我建议你下载“线程安全”的。
步骤2:下载完软件包后,您需要将php_memcache.dll复制到extensions文件夹中:C:\wamp\bin\php\ {您的PHP版本} \ext
第3步:添加扩展值到您的php.ini file,要在正确的位置执行此操作,只需搜索另一个已安装的扩展,如:extension=php_bz2.dll并将其复制粘贴到本节末尾(在所有“extension=”之后)
扩展名= php_内存缓存. dll
第4步:关闭和打开你的WAMP(不是重新启动-关闭和打开),你就完成了。
如果你现在有麻烦-只是打开错误日志文件(在根目录),并检查什么是错误,你得到那里。

我的错误是我的WAMP是32位的,而我下载了64位的memcache

这解决了我的问题,希望它有所帮助。

n7taea2i

n7taea2i4#

Memcache是一个PECL扩展,不与PHP捆绑在一起。

cnh2zyt3

cnh2zyt35#

对于每个在为Wamp安装memcache时遇到问题的人,下面是它对我的帮助。
1.确保你检查你的phpinfo和寻找“编译器”我的显示MSVC 9(Visual C++ 2008)这是这样你就知道如果你下载的dll为vc 9或vc6.也寻找“线程安全”在phpinfo上它显示启用,那么你需要下载dll文件,包含TS如果禁用,那么你下载的dll与文字NTS.
下面是你可以找到的dll的不同php版本确保您下载的版本匹配您的版本:
确保你也有32位或64位,你下载正确
然后将文件解压缩到windows/system32(如果您的windows是32位)或system文件夹(如果您的windows是64位)。
同样解压到你的wamp/bin/apache/bin和wamp/bin/you_php_version/ext,还有memcache.exe解压到这个文件夹,确保你根据你的系统使用32位或64位的memcached。
完成此操作后,以管理员身份运行Windows命令提示符,然后浏览到可执行文件memcache的位置,并执行以下操作:
步骤1:memcache.exe -d安装步骤2:memcache.exe -d启动
然后在你的wampserver上打开托盘菜单,进入php菜单,点击php.ini确保你添加了你的扩展,以防没有列出:扩展名= php_内存缓存. dll
重新启动你的wampserver,然后转到你的phpinfo,寻找memcache,如果你看到它,那么它就安装了。
希望能有所帮助
新年快乐!

whhtz7ly

whhtz7ly6#

1.下载memcache而不是memcached如果你用的是windows。下载你的php版本(下载链接:(第10页)
1.将php_memcache.dll复制到C:
1.使用Wamp控件重新启动Apache
1.启用WAMP -〉PHP -〉PHP扩展-〉php_memcache

r1zhe5dt

r1zhe5dt7#

Memcache是一个PECL扩展,不与PHP捆绑
PHP没有捆绑此PECL扩展。有关安装此PECL扩展的信息,请参阅手册中标题为“安装PECL扩展”的章节。其他信息(如新版本、下载、源文件、维护者信息和CHANGELOG)可在此处找到:http://pecl.php.net/package/memcache

Note:
It's possible to disable memcache session handler support. 
The 'pecl install' option prompts for this (default is enabled) 
however when compiling statically into 
PHP the --disable-memcache-session configure option may be used.

在阅读其他人在本页上提供的信息时,需要注意的是,服务“memcached”有两个 * 截然不同的 * memcache PHP实现。

1) pecl-memcache
2) pecl-memcached

此页用于第一个pecl-memcache。
如果您正在查找pecl-memcached信息,请访问此处:
http://www.php.net/manual/en/book.memcached.php

f5emj3cl

f5emj3cl8#

因为我的编辑被拒绝了,下面是我在Windows上安装memcache后的工作,作为补充:
手动将memcache配置添加到php.ini。注意:你的系统上可能安装了两个不同的php.ini。对我来说,修改位于wamp 64/bin/apache的那个是唯一有效的:

extension=php_memcache.dll
[Memcache]
memcache.allow_failover = 1
memcache.max_failover_attempts=20
memcache.chunk_size =8192
memcache.default_port = 11211

您可能需要将扩展添加到扩展块;
灵感源自this thread

相关问题