时间:2021-07-01 10:21:17 帮助过:13人阅读
如何使用php程序操作我们的memcached服务 curd.
步骤,准备工作.
(1) 把 php_memcache.dll 文件拷贝 php的ext 下
? 不同版本的php 所使用的 php_memcache.dll 的版本不一样
(2) 修改php.ini文件,加载 php_memcache.dll (该文件就是封装了一堆函数)
;加载php_memcache.dll 文件
extension=php_memcache.dll
(3) 重新启动apache
(4) 我们写程序来完成curd操作.
可以用 telnet 查看是否成功
取对象时,要注意:在前面声明要取的类。跟session一样
mem1.php
$mem = new Memcache();
if ($mem->connect('127.0.0.1',11211)){
echo'连接成功
';
}else{
echo'连接失败
';
}
//增加
//1.增加一个字串
/*if ($mem->add('key1','shanghai',MEMCACHE_COMPRESSED,30)){
echo'添加成功
';
}else{
echo'添加失败
';
}*/
//2.添加数字
/*if ($mem->add('key1',100,MEMCACHE_COMPRESSED,30)){
echo'添加成功
';
}else{
echo'添加失败
';
}*/
//3.添加数组
// 在添加数组时,根据需要,希望序列化后在存入。 serialize
//根据需要,也可以 json_encode()
/*$arr = array('aaa','bbb','ccc');
if ($mem->add('key1',$arr,MEMCACHE_COMPRESSED,30)){
echo'添加成功
';
}else{
echo'添加失败
';
}*/
//4.添加对象
/*class Dog
{
public $name;
public $age;
public function __construct($name,$age)
{
$this->name = $name;
$this->age = $age;
}
}
$do1 = new Dog('小米',18);
if ($mem->add('key1',$do1,MEMCACHE_COMPRESSED,30)){
echo'添加对象成功
';
}else{
echo'添加对象失败
';
}*/
//5.添加 null 和 布尔值
/*if ($mem->add('key1',null,MEMCACHE_COMPRESSED,30)){
echo'添加null成功
';
}else{
echo'添加null失败
';
}*/
/*if ($mem->add('key1',false,MEMCACHE_COMPRESSED,30)){
echo'添加布尔值成功
';
}else{
echo'添加布尔值失败
';
}*/
//6.资源类型
$key1 = mysql_connect('localhost','root','123456');
if(!$key1){
die('连接数据库失败');
}
if ($mem->add('key1',false,MEMCACHE_COMPRESSED,30)){
echo'添加资源成功
';
}else{
echo'添加资源值失败
';
}
//查询
$val = $mem->get('key1');
//如果是资源的话,即使保存成功,取出来也是 0,所以 memcache 不支持存放资源
var_dump($val);
echo'$val=',$val,'
';
//修改
//删除
mem2.php
//在这个文件去 memcache 对象$mem = new Memcache();
classDog
{public$name;
public$age;
publicfunction__construct($name,$age)
{$this->name = $name;
$this->age = $age;
}
}
if ($mem->connect('127.0.0.1',11211)){
echo'连接成功
';
}else{
echo'连接失败
';
}
//在另外文件取对象$dog = $mem->get('key1');
var_dump($dog);
index.php
classDog
{public$name;
public$age;
publicfunction__construct($name,$age)
{$this->name = $name;
$this->age = $age;
}
}
$dog2 = new Dog('小哈',18);
//把这个对象保存到磁盘 -> serialize ,字符串可以在网上传输//传统方法//file_put_contents('./dog.log',$dog2); //保存不了,是空的//序列化
file_put_contents('./dog.log',serialize($dog2)); //可以保存,取出时,还可以反序列化echo'保存ok
';
$str = file_get_contents('./dog.log');
var_dump($str);
var_dump(unserialize($str));
').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('').text(i));
};
$numbering.fadeIn(1700);
});
});
以上就介绍了4 PHP 操作 memcached1,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。