я установил 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"))); ?>
но он дает ошибку: Fatal error: Class 'Memcache' not found in C:\wamp\www\temp.php on line 3
означает ли это, что memcache не запущен или что-то еще? я ничего не делал, кроме установки и запуска службы, мне нужно сделать что-нибудь еще, например, указать RAM и добавить сервер или что-нибудь еще? Я использую wamp-сервер.
Вот шаги, которые сработали для меня:
URL: Как включить memcache в WAMP
Необходимые файлы
memcached.exe Direct Link MSVCP71.DLL Windows DLL Files msvcr71.dll php_memcache.dll Working memcache for PHP 5.3.4
меры
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
Затем я попал в phpinfo (), это не отображало свойство memcache. Любой может помочь мне установить wmap.
– Спасибо Д.Джева
Обязательно запустите командную строку как администратор, если вы еще этого не сделали. Также убедитесь, что у вас есть memcache, и у вас есть надлежащая dll. Используйте phpinfo (), чтобы проверить, что memcache включен в PHP. Затем просто запустите быстрый скрипт, чтобы проверить, работает ли 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, вам также потребуется либо расширение Memcache, либо Memcached PHP, которое будет обрабатывать связь с сервисом. Похоже, вы намереваетесь использовать Memcache.
В руководстве по PHP объясняется, как установить расширения PECL в Windows. У WAMP может быть более простой механизм, я не уверен, поскольку я не знаком с WAMP.
редактировать
Я нашел это сообщение в блоге об установке Memcached для работы с PHP на WAMP. Это может оказаться полезным. Похоже, что расширение, вероятно, уже доступно как .dll
файл на вашем компьютере, и вам просто нужно отредактировать файл php.ini
чтобы включить расширение, а затем перезапустить Apache.
Я столкнулся с такой же проблемой.
В моем случае проблема заключалась в том, что я работал на 64-bit
системе, но я загрузил 32-bit
файл dll memcache. После того, как я загрузил Memcache 2.2.6 VC9 x64 Thread Safe