Php memcache在windows上不工作?

Php memcache在windows上不工作?,php,memcached,wamp,wampserver,Php,Memcached,Wamp,Wampserver,我安装了memcached,我还通过键入net start“memcached Server”启动了该服务,它说该服务已经启动,因此我重新启动了apache,并尝试了使用memcached的两个代码: <?php //phpinfo(); $memcache = new Memcache; $memcache->connect("localhost",11211); //change if necessary $tempArray = array('fish', 'cow', 'd

我安装了memcached,我还通过键入net start“memcached Server”启动了该服务,它说该服务已经启动,因此我重新启动了apache,并尝试了使用memcached的两个代码:

<?php
//phpinfo();
$memcache = new Memcache;
$memcache->connect("localhost",11211); //change if necessary

$tempArray = array('fish', 'cow', 'demon');
$temp = serialize($testArray);

$memcache->add("key", $temp, 60);
print_r(unserialize($memcache->get("key")));


?>

但它给出了一个错误:
致命错误:在第3行的C:\wamp\www\temp.php中找不到类“Memcache”

这是否意味着memcache未启动或其他任何操作?除了安装和启动服务之外,我没有做任何事情。我还需要做其他事情吗?比如指定RAM、添加服务器或其他任何事情?我正在使用wamp服务器。

如果您还没有以管理员身份运行命令提示符,请确保您也以管理员身份运行命令提示符。还要确保已启用memcache,并且具有正确的dll。使用phpinfo()检查是否在PHP端启用了memcache。然后运行一个快速脚本来测试memcache是否可以运行。如果没有遇到错误,请尝试以下操作:memcache已启用

<?php
$memcache = new Memcache;
$memcache->connect("localhost",11211); //change if necessary

$tempArray = array('fish', 'cow', 'demon');
$temp = serialize($testArray);

$memcache->add("key", $temp, 60);
print_r(unserialize($memcache->get("key")));
?>

Memcached服务不够。它本身与PHP无关,也不容易从PHP中使用。为了使它能被PHP使用,您还需要或PHP扩展来处理与服务的通信。看起来您打算使用Memcache

说明如何在windows上安装PECL扩展。WAMP可能有一个更简单的机制,我不确定,因为我不熟悉WAMP

编辑


我发现这是关于在WAMP上安装Memcached与PHP一起工作的。这可能会有帮助。看起来扩展名可能已经作为
.dll
文件在您的计算机上某处可用,您只需编辑
php.ini
文件以包含扩展名,然后重新启动Apache。

以下是对我有效的步骤:

网址:

需要的文件

memcached.exe Direct Link
MSVCP71.DLL Windows DLL Files
msvcr71.dll
php_memcache.dll Working memcache for PHP 5.3.4
台阶

然后,我点击了phpinfo(),它没有显示memcache属性。任何人都可以帮我安装wmap

-- 谢谢
吉瓦我面临着完全相同的问题

在我的例子中,问题是我在一个
64位
系统上运行,但我下载了
32位
memcache dll文件。
在我下载

权限之后?尝试以管理员身份打开命令提示符
phpinfo()
并查找已安装的
memcache
扩展。在你们看到之后,并没有任何关于如何安装它的wamp文档。它并没有给出任何东西,只有一点点信息,但memcache并没有写在任何地方……请帮我解决……正如我所说的:“检查wamp文档关于如何安装它”这不是你们两小时前问的重复吗?我认为最好是把它归结为一个问题。当我以管理员身份运行命令提示符并运行dir命令时,它会在每个文件和文件夹中显示此错误消息:
系统无法在应用程序的消息文件中找到消息编号0x2355e的消息文本。所以我还是继续。。。并执行了以下命令集:
c:\memcached\memcached.exe-d install c:\memcached\memcached.exe-d start`我重新启动了我的服务,然后当我尝试脚本时,它给了我以下错误:`致命错误:在第2行的c:\wamp\www\temp.php中找不到类'Memcache'。您使用的是cmd的副本还是重命名了它?该错误消息不应以任何方式与memcache相关。另外,确保使用了正确的扩展,memcache和memcached都有PHP扩展。使用phpinfo()验证是否启用了正确的选项。如果是,并且你有运行的守护进程,它应该在重新启动后工作。不,我没有使用copy,我没有重命名它,当我安装memcached时,它没有显示任何错误,我也启动了它。phpinfo()没有给我任何关于memcached的信息@你能教我怎么安装吗?从一开始@约翰尼开始工作了,但本教程应该足够了。如果你还有问题,我回来后会尽力帮你的。这也是我的问题。我花了很长时间试图解决这个问题。谢谢lot@Memos你不应该在Windows上使用非线程安全版本吗?@Phill Healey,我不这么认为。我不明白为什么不使用线程安全版本。
Copy MSVCP71.DLL, msvcr71.dll to C:\windows\sysWOW64
Copy memcached.exe into C:\memcached
Click Windows-Key
Type: CMD
press: Ctrl-Shift-Enter
Choose yes
type: C:\memcached\memcached.exe -d install
type: C:\memcached\memcached.exe -d start
Copy php_memcache.dll to C:\wamp\bin\php\php5.3.4\ext
Restart Apache using Wamp controls
Enable WAMP -> PHP -> PHP Extensios -> php_memcache