2012-05-30 2 views
0

은 내가 memcached를 설치하고 또한 "memcached를 서버"에서 net start를 입력하여 서비스를 시작하고 서비스가 이미 내가 아파치를 다시 시작하기 시작했다 및 memcached를 사용하기위한 코드의 몇 가지를 시도 :memcache가 창에서 작동하지 않습니까?

<?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 서버를 사용하고있다.

+0

권한이 있습니까? 명령 프롬프트를 열고 관리자 – tigrang

+0

이 약간의 오류 –

+0

'phpinfo();를 주었고'memcache' 확장이 설치되어 있는지 확인하십시오. 설치 프로그램을 설치하는 방법에 대한 어떤 wamp 문서도 없다는 것을 보았을 것입니다. * "**를 설치하는 방법에 대한 문서를 WAMP 확인 : – zerkms

답변

4

여기 나를 위해 일한 단계는 다음과 같습니다

URL : How to enable memcache in 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 설치를 도와 줄 수 있습니다.

- 감사 D.Jeeva

2

관리자가 아닌 경우 명령 프롬프트도 실행해야합니다. 또한 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"))); 
?> 
+0

을 다운로드 한 후 메시지 파일의 메시지 번호 0x2355e에 대한 메시지 텍스트를 찾을 수 없습니다. 응용 프로그램. 그래서 나는 계속 나아 갔다. .. '의 C : \ C를 설치 -d memcached.exe \ memcached를 : 및 다음 명령 세트를 실행 \ \ memcached.exe -d start' memcached를하고 난 스크립트를 시도 할 때 난 다음 내 서비스를 다시 시작, 그것은했다 내가이 오류 : '치명적인 오류 : C에서 찾을 수없는 클래스 'Memcache의'\ WAMP \ www가 \ temp.php 2' –

+0

당신이 cmd를의 사본을 사용하고 있습니까하거나 이름을 변경 않았다 라인? 이 오류 메시지는 memcache와 관련이 없어야합니다. 또한 적절한 확장이 사용되고 있는지 확인하십시오. memcache와 memcached 모두 PHP 확장이 있습니다. phpinfo()를 사용하여 올바른 것이 유효한지 확인하십시오. 그것이 있고 당신이 데몬을 실행 시키면 다시 시작한 후에 작동해야합니다. – Johnnyoh

+0

아니, 나는 복사본을 사용하지 않고 memcached를 설치했을 때 이름을 변경하지 않았다. 오류가 발생하지 않았고 시작했다. 은 phpinfo()을 didnt는 나에게 memcached를에 대한 정보 .... 나는 그것을 설치 –

2

Memcached 서비스가 충분하지 않습니다. 그 자체로는 PHP와는 아무런 관련이 없으며 PHP에서 쉽게 사용할 수 없습니다. PHP에서 사용할 수 있도록하려면 서비스와의 통신을 처리하는 Memcache 또는 Memcached PHP 확장이 필요합니다. Memcache를 사용하려는 것 같습니다.

PHP manual은 Windows에 PECL 확장을 설치하는 방법을 설명합니다. WAMP는 더 쉬운 메커니즘을 가지고 있을지 모르지만 WAMP에 익숙하지 않은 것은 확실하지 않습니다. 편집

는 그래도 난 WAMP에 PHP와 함께 작동하도록 memcached를 설치하는 방법에 대한이 blog post을 발견했다. 도움이 될 수 있습니다. 확장 프로그램이 컴퓨터에 이미 .dll 파일로 이미있는 것 같으며 php.ini 파일을 편집하여 확장 프로그램을 포함시킨 다음 Apache를 다시 시작하기 만하면됩니다.

1

나는 똑같은 문제에 직면했다.

내 경우에는 문제가 내가 64-bit 시스템에서 실행되고 있었지만 32-bit memcache dll 파일을 다운로드했습니다. 관리자 권한으로 명령 프롬프트를 실행하고 dir 명령을 실행할 때 Memcache 2.2.6 VC9 x64 Thread Safe

+0

이것은 제 문제이기도합니다. 나는 이것을 해결하려고 많은 시간을 보냈습니다. 고마워요. – Emmanuel

+0

@Memos Windows에서 비 스레드 안전 버전을 사용하지 않겠습니까? –

+0

@ Phill Healey, 나는 그렇게 생각하지 않는다. 내가 왜 스레드 안전 버전을 사용하지 볼 수 없습니다. – Memos

관련 문제