我已经完美安装了 memcached 并且创建了一个新的实例,但我不明白我是否连接到了正确的端口...我总是从 get(key) 得到一个错误的返回值
这是我的代码:
$sql = "SELECT * FROM users";
$key = md5('q'.$sql); //create an index key for memcache
$result = $memcache->get($key);//lookup value in memcache
//check if we got something back
if($result == null) {
echo "nothing back";
$r = mysql_query($sql) or die(mysql_error()." : $sql");//fetch from database
if(mysql_num_rows($r)> 0) {
echo "returned";
$people = array();
while ($person = mysql_fetch_assoc($r)) {
$people[] = $person;
}
$memcache->set($key,$people,0,3600);//store in memcache
}
}
print_r($result);
提前致谢
答案1
以下是连接语句:
$memcache = new Memcache;
$memcache->connect('127.0.0.1',11211) or die('Could not connect');
您缺少 memcached连接语句。
Memcached 的默认端口被广泛认为是 11211。
使用类似http://livebookmark.net/memcachephp/memcachephp.zip测试你的 memcached/php 安装。
答案2
默认情况下,memcached 监听端口 11211。您使用哪个端口连接,您收到的具体错误是什么?