`

Cakephp + Predis使用文档

阅读更多
Cakephp + Predis使用文档
1. 环境准备
a.Php环境
b.Capephp 环境
c.Predis文件
2. 使用说明
a. predis的URL:http://github.com/nrk/predis/
b. 和cakephp集成
取Predis_Compatibility.php、Predis.php、SharedConfigurations.php文件放置于cakephp/app/vendors/Predis目录下

文件修改:
<?php
				require_once 'Predis.php';
				define('REDIS_HOST', '127.0.0.1');
				define('REDIS_PORT', 6379);
				
				$single_server = array(
    					'host'     => REDIS_HOST, 
    					'port'     => REDIS_PORT//, 
					//    'database' => 15
				);
				
				$multiple_servers = array(
  				  array(
       				'host'     => '127.0.0.1',
       				'port'     => 6379,
       				'database' => 15,
      				'alias'    => 'first',
    				),
   				array(
       				'host'     => '127.0.0.1',
       				'port'     => 6380,
       				'database' => 15,
       				'alias'    => 'second',
   				),
			);
		?>


c. 新建Cakephp的components文件redis_client.php
<?php
				App::import('Vendor', 'Predis_Client', array('file' 					=>'Predis'.DS.'SharedConfigurations.php'));
				
				class RedisClientComponent extends Object {
				
				// Predis info
				var $redis = null;
				
				//called before Controller::beforeFilter()
				function initialize(&$controller, $settings = array()) {
					// saving the controller reference for later use
					$this->controller =& $controller;
	 				
	 				//修改redis
					$this->redis = new Predis_Client(array(
			    			'host' => REDIS_HOST, 
			    			'port' => REDIS_PORT, 
					));
					
					//$this->redis = new Predis_Client($single_server);
					
				}
				
				/**
	 			 * client add value
	 			 */
				function setValue( $key, $val ){
					//不存在就添加
					if(!$this->redis->exists($key)){
						$this->redis->set($key, $val);
					}else{
						$this->redis->del($key);
						$this->redis->set($key, $val);
					}
				}
				
				/**
	 			 * client get value
	 			 */
				function getValue($key){
					return $this->redis->get($key);
				}
				
				/**
	 			 * client delete value
	 			 */
				function del($key){
					if($this->redis->exists($key)){
						$this->redis->del($key);
					}
				}
				
				//called after Controller::render()
				function shutdown(&$controller) {
				}
			
			}
?>

d. Controller中使用
引入components:
public $components = array('RedisClient');


设置值:
$this->RedisClient->setValue($key, $val);


获得值:
$this->RedisClient->getValue($key);


删除值:
$this->RedisClient->del($key);

分享到:
评论

相关推荐

    cakephp + jira soap client的使用

    在了解如何使用CakePHP结合Jira的RESTful API之前,我们首先需要了解几个基础概念: 1. CakePHP框架:这是一个快速开发的PHP框架,提供了MVC(模型-视图-控制器)架构,能够帮助开发者创建Web应用程序。CakePHP通过...

    CakePHP 1.2 API 中文文档

    CakePHP 1.2 API 中文文档是针对这个版本的详细技术参考,为开发者提供了丰富的接口信息和使用指南,特别适合那些不熟悉英文文档或希望快速查找中文资料的开发者。 **MVC架构介绍** 在 CakePHP 中,MVC模式是核心...

    CakePHP 3.4 开发手册文档 CakePHP Cookbook Documentation Release 3.4

    ### CakePHP 3.4 开发手册文档概览 #### CakePHP 一瞥 ...这份文档不仅涵盖了框架的基础知识,还深入探讨了高级主题和技术细节,对于任何希望深入了解和使用 CakePHP 的开发者来说都是宝贵的学习资源。

    xampp+cakephp2+webservice+j-ui

    【描述】提到的"xampp+cakephp+webservice+dwz整合",表明这是一个将XAMPP与CakePHP2集成,并且利用Webservice进行数据通信,同时采用DWZ(Dynamic Web Zone)作为前端框架的项目。DWZ是一个基于jQuery的前端MVC框架...

    CakePHP 1.3中文帮助文档

    CakePHP 1.3中文帮助文档,内容简单易懂并且全面,值得大家下载...

    CakePHP框架最全中文文档

    ### CakePHP框架最全中文文档知识点详解 #### 一、CakePHP框架概述 **CakePHP**是一款基于PHP语言的开源快速开发框架,采用MVC(Model-View-Controller)架构模式,旨在帮助开发者构建高质量的Web应用。其设计哲学...

    CakePHP 3.5 开发手册文档 CakePHP Cookbook Documentation Release 3.5/共900页 PDF

    ### CakePHP 3.5 开发手册文档概览与核心知识点解析 #### 一、CakePHP简介 **CakePHP** 是一个用 PHP 编写的快速、简洁的开发框架。它采用了 MVC (Model-View-Controller) 架构模式,旨在简化 Web 应用程序的开发...

    cakephp最新开发文档

    16. **兼容性**:CakePHP兼容PHP4和PHP5,尽管现在推荐使用PHP7或更高版本。 通过以上特性,CakePHP为开发者提供了高效、安全的开发环境。其活跃的社区和友好的许可协议也促进了框架的持续改进和发展。无论是新手...

    cakephp帮助文档

    ### CakePHP帮助文档知识点概述 #### 一、CakePHP概览与入门 CakePHP是一种流行的开源Web开发框架,基于PHP语言构建,遵循MVC(Model-View-Controller)设计模式。它旨在简化Web应用程序的开发过程,提供了一套...

    cakephp文档

    文档中的示例重点介绍了CakePHP中查询功能的使用方法。下面将详细解释这些示例,并从中提炼出相关的知识点。 #### 三、知识点详解 ##### 1. 使用条件查询获取书籍信息 **场景描述**:假设我们需要从数据库中查找...

    cakephp官方文档

    ### CakePHP官方文档知识点概述 #### 一、Getting Started(开始使用) - **博客教程**:此部分提供了详细的博客应用程序构建教程,从零开始引导开发者完成一个完整的博客系统的开发过程。教程分为多个部分,其中...

    gae-cakephp-email:为CakePHP + Google App Engine设置编写的邮件传输类

    在Google App Engine for PHP上部署CakePHP时,面临的挑战之一是您无法使用普通的[CakeEmail]( )类。 因此,我编写了该类来包装Google App Engine [Message]( )类,以使其无缝运行。安装+配置[下载最新代码]( ...

    CakePHP框架最全中文文档.

    CakePHP是一个流行的开源PHP框架,遵循模型-视图-控制器(MVC)设计模式,提供了一套完整的开发工具包...CakePHP的中文文档为中文用户提供了一条学习和掌握这一框架的途径,帮助他们有效地使用CakePHP进行Web应用开发。

    cakephp 中文文档

    ### CakePHP 中文文档知识点详解 #### 一、CakePHP 的基本原则 CakePHP 是一款基于 PHP 的开源快速开发框架,采用 MVC(Model-View-Controller)设计模式,旨在提高开发效率的同时保持代码的清晰性和可维护性。其...

    CakePHP使用ajax传值

    5. 使用Ajax进行数据交互的示例:虽然文档中没有给出具体的代码示例,但通常在用户界面中会使用JavaScript监听某个事件(如点击按钮),然后通过AJAX(可能是jQuery的$.ajax方法或$.post方法)发送数据到服务器。...

    cakephp-jwt-auth, 使用JSON网络令牌进行身份验证的CakePHP插件.zip

    cakephp-jwt-auth, 使用JSON网络令牌进行身份验证的CakePHP插件 CakePHP认证插件 包含AuthComponent类认证的插件,用于使用 JSON网络令牌进行身份验证。 你可以在这里详细阅读关于JSON网络令牌规范的详细说明。要求...

    cakephp-cakephp-2.0.0-beta-0-g402934f.zip

    《CakePHP:构建高效Web...通过使用CakePHP,开发者可以快速构建安全、可维护且高效的Web应用,同时享受到良好的社区支持和丰富的文档资源。在实际开发过程中,理解并熟练掌握这些特性是提高开发效率和代码质量的关键。

Global site tag (gtag.js) - Google Analytics