摘要:使用JS-SDK需要进行四步 主要是步骤二和步骤三,步骤二需要配置,步骤三具体使用相关接口,这里以使用图像接口为例php页面代码主要用来完成步骤二,也就是配置接口public function index() { $signPackage = $this->getSignPackage(); g("smarty") -> assign("appId", $signPac...
阅读全文
摘要:企业开发者可以通过接口实现对应用的头像、名称、简介设置,也可通过接口开启或关闭应用的功能开关。 获取企业号应用 根据开发文档,可以看出,需要两个参数access_token、agentid,agentid在哪里获取,在我上一篇博文里已经讲过了,这里就不重复了,直接上代码public function get() { $agentid = intval($_GET['age...
阅读全文
摘要:上传、获取临时素材文件,媒体文件类型有图片(image)、语音(voice)、视频(video),普通文件(file) ,这里以上传、下载图片为例上传临时素材文件 根据开发文档,可以看出,需要三个参数access_token、type、media,access_token和type容易解决,media的话就要写一个表单上传过来表单如下:" name="file" method="POS...
阅读全文
摘要:首先要匹配企业应用设置项中的'可信域名'(如果你的redirect_uri有端口号,那'可信域名'也必须加上端口号),否则跳转时会提示redirect_uri参数错误。登录企业号点击点击你要开发的应用设置可信域名 企业获取code 根据开发文档,我们需要拿到企业的CorpID,去到微信企业号的设置即可拿到index.php:/** * 企业获取code */ //填写对应的企业...
阅读全文
摘要:定义:在客户端与实体之间建立一个代理对象(proxy),客户端对实体进行操作全部委派给代理对象,隐藏实体的具体实现细节好处:代理对象(proxy)还可以与业务代码分离,部署到另外的服务器。业务代码中通过RPC来委派任务$proxy = new \IMooc\Proxy();$proxy->getUserName($id);$proxy->setUserName($id, $name);query(...
阅读全文
摘要:1.单一职责:一个类,只需要做好一件事情2.开发封闭:一个类,应该是可扩展的,而不可修改的3.依赖倒置:一个类,不应该强依赖另外一个类。每个类对于另外一个类都是可替换的。4.配置化:尽可能地使用配置,而不是硬编码。5.面向接口编程:只需要关心接口,不需要关心实现。来自为知笔记(Wiz)
阅读全文
摘要:MVC结构是其它三个经典的设计模式的演变:观察者模式(Observer)(Pub/Sub), 策略模式(Strategy)和组合模式(Composite)。 来自为知笔记(Wiz)
阅读全文
摘要:1.PHP中使用ArrayAccess实现配置文件的加载$config = new \IMooc\Config(__DIR__.'/configs');var_dump($config['controller']);path = $path; } public function offsetExists($key) { return isset($this->con...
阅读全文
摘要:定义:先创建好一个原型对象,然后通过clone原型对象来创建新的对象。好处:1.原型模式与工厂模式作用类似,都是用来创建对象 2.免去了类创建时重复的初始化操作 3.原型模式适用于大对象的创建。创建一个大对象需要很大的开销,如果每次new就会消耗很大,原型模式仅需内存拷贝即可。$prototype = new \IMooc\Canvas();$prototy...
阅读全文
摘要:定义:可以动态地添加修改类的功能解析:一个类提供了一项功能,如果要在修改并添加额外的功能,传统的编程模式,需要写一个子类继承它,并重新实现类的方法。使用装饰器模式,仅需在运行时添加一个装饰器对象即可实现,可以实现最大的灵活性。$canvas1 = new IMooc\Canvas();$canvas1->init();$canvas1->addDecorator(new \IMooc\ColorD...
阅读全文
摘要:定义:在不需要了解内部实现的前提下,遍历一个聚合对象的内部元素好处:相比于传统的编程模式,迭代器模式可以隐藏遍历元素的所需的操作$users = new \IMooc\AllUser();foreach ($users as $user){ var_dump($user);}connect('127.0.0.1', 'root', 'root','test'); $result...
阅读全文
摘要:定义:全局共享和交换对象好处:把某些类或者方法注册成全局变量(只需构造一次),调用时直接调用该全局变量即可$db = \IMooc\Register::get('db1');<?phpnamespace IMooc;class Factory{ static function createDatabase() { $db = Database::getInstance()...
阅读全文
摘要:定义:可以将截然不同的函数接口封装成统一的API实际应用举例:1.PHP的数据库有mysql,mysqli,pdo3种,可以用适配器模式统一成一致 2.cache适配器,将memcache,redis,file,apc等不同的缓存函数,统一成一致以实际应用举例1作为示例$db = new IMooc\Database\MySQL();//$db = n...
阅读全文
摘要:定义:将一组特定的行为和算法封装成类,以适应某些特定的上下文环境,使用策略模式可以实现Ioc,依赖倒置、控制反转实际应用举例:假如一个电商网站系统,针对男性女性的用户要各自跳转到不同商品类目,并且所有广告位展示不同的广告(分支逻辑)class Page{ protected $strategy; function index() { echo "AD:"; ...
阅读全文
摘要:定义:将对象和数据存储映射起来,对一个对象的操作会映射为数据存储的操作综合应用实例:在代码中实现数据对象映射模式,我们将实现一个ORM类,将复杂的SQL语句映射成对象属性的操作,结合使用数据对象映射模式,工程模式,注册模式$page = new Page();$page->index();class Page{ function index() { $user = \IM...
阅读全文
摘要:定义:当一个对象状态发生改变时,依赖它的对象全部会收到通知,并自动更新,实现低耦合,非侵入式的通知与更新机制场景:一个事件发生后,要执行一连串更新操作。传统的编程方式,就是在事件的代码之后直接加入处理逻辑。当更新的逻辑增加之后,代码会变得难以维护。这种方式是耦合的,侵入式的,增加新的逻辑需要修改事件主体的代码$event = new Event();$event->addObserver(new ...
阅读全文
摘要:在每个函数实现业务逻辑后,使用return $this;where("id=1")->where("name=2")->order("id desc")->limit(10);//$db->where("id=1");//$db->where("name=2");//$db->order("id desc");//$db->limit(10);来自为知笔记(Wiz)
阅读全文
摘要:1.__get / __set当类没有要存取的属性时,就调用这两个函数$obj = new IMooc\Object();$obj->title = "hello";echo $obj->title;array[$key] = $value; } function __get($key) { var_dump(__METHOD__); return $...
阅读全文
摘要:定义:用工厂的方法或类生成对象,而不是在代码中直接new好处:当对象的名称或对象的参数改变时,只需在工厂的方法或者类一处修改即可$db = IMooc\Factory::createDatabase();<?phpnamespace IMooc;class Factory{ static function createDatabase() { $db = new Data...
阅读全文
摘要:定义:使某个类的对象仅允许创建一个实例好处:节约资源$db = IMooc\Database::getInstance();<?phpnamespace IMooc;class Database{ protected $db; private function __construct() { } static function getInstance() { ...
阅读全文
摘要:命名空间是为了防止函数名冲突当php编译器找到未定义类时,就会自动去调用__autoload($class)这个函数,$class就代表这个未定义的类名相对于当前项目根目录所在路径 php5.3之后使用spl_autoload_register()代替__autoload() 来自为知笔记(Wiz)
阅读全文
摘要:数据结构:栈$stack = new SplStack();$stack->push("data1\n");$stack->push("data2\n");echo $stack->pop();echo $stack->pop();数据结构:队列$queue = new SplQueue();$queue->enqueue("data1\n");$queue->enqueue("data2\n")...
阅读全文
摘要:PHP 支持 8 种原始数据类型。 标量类型:boolean(布尔型)当转换为 boolean 时,以下值被认为是 FALSE: ◦ 布尔值 FALSE 本身 ◦ 整型值 0(零) ◦ 浮点型值 0.0(零) ◦ 空字符串,以及字符串 "0" ◦ 不包括任何元素的数组 ◦ 不包括任何成员变量的对象(仅 PHP 4.0 适用) ◦ 特殊类型 NULL(包括尚未赋值的变量) ◦...
阅读全文
摘要:静态变量 如果在声明中用表达式的结果对静态变量赋值会导致解析错误。全局和静态变量的引用 在一个函数域内部用 global 语句导入的一个真正的全局变量实际上是建立了一个到全局变量的引用。 引用并不是静态地存储的HTML 表单(GET 和 POST) 变量名中的点和空格被转换成下划线。例如 变成了$_REQUEST["a_b"]。 HTTP Coo...
阅读全文
摘要:<?php class Response{ const JSON ='json'; /* * 按综合方式输出通信数据 * @param integer $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @param s
阅读全文
摘要:算法分析 【1】时间复杂度为O(d(n+r))【d代表关键字有d位,n代表n个记录,r代表r个空队列】 【2】辅助空间复杂度S(n) = O(n+r)【n代表n个记录,r代表r个空队列】,是一个就地排序 【3】基数排序是稳定的排序方法 来自为知笔记(Wiz)
阅读全文
摘要:基本思想:将有序的子序列进行归并,从而得到有序的序列。 来自为知笔记(Wiz)
阅读全文
摘要:基本思想:每一趟从待排序的记录中选出关键字最小的记录,顺序放在已排好序的子文件的最后,直到全部记录排序完毕。直接选择排序1.基本思想2.算法分析 堆排序 1.堆的定义2.大根堆和小根堆3.堆排序与直接插入排序的区别 4.基本思想 调整堆符合堆的性质算法 建成初始堆 5.算法分析 【1】时间复杂度为O(nlog2^n) 【2】辅助空间复杂度S(n) = O(1),是一个就地排序 【...
阅读全文
摘要:基本思想:两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。冒泡排序1.基本思想 将被排序的记录数组R[1...n]垂直排序,每个记录R[i]看做是重量为R[i].key的气泡。根据轻气泡不能再重气泡之下的原则,从下往上的原则,从下往上(也可以从上往下)扫描数组R,一旦扫描到违反此原则的轻气泡,就使其向上“漂浮”。如此反复进行,直到最后任何两个气...
阅读全文
摘要:基本思想:每次将一个待排序的记录,按其关键字大小插入已经排好序的文件中的适当位置,直到全部记录插入完为止(像打牌一样,边抓边整理)直接插入排序1.算法思想 假设待排序的记录存放在数组R[1....n]中。初始时,i=1,R[1]自成一个有序区,无序区为R[2...n]。然后,从i=2起直至i=n,依次将R[i]插入当前的有序区R[1...i-1]中,最后,生成含n个记录的有序区。 2....
阅读全文
摘要:对于两种变量的交换,我发现四种方法,下面我用Java来演示一下。 1.利用第三个变量交换数值,简单的方法。 class TestEV //创建一个类 { public static void main(String[]args) { int x =5,y=10; //定义两个变量 int temp
阅读全文
摘要:LRU是Last Recent Used 缩写,做为一种缓存算法,将最近较少使用的缓存失效。memcache采用了该算法。如下采用了一种PHP的实现方式。该算法将每次新增的内容,放到缓存顶部,达到缓存极限时,将缓存底部的内容清除。可以通过如下PHP代码来模拟。 来源: http://it.taocm
阅读全文
摘要:一.创建虚拟用户的数据1.随便在一个目录下建立一个文件login_user(文件名可以任取),这个文件应该为每个用户预留2行,第1行是用户名,第2行是用户口令 vi /etc/vsftpd/login_user cat /etc/vsftpd/login_user 2.安装db工具,一般情况下系统并没有预装在系统中 2.1下载安装包db-4.6.21.tar.gz并拉到服务器 ...
阅读全文
摘要:本地上传到服务器的步骤如下: 1.“开始”-“运行”-输入“FTP” 2.open qint.ithot.net 这一步可以与第一步合并,在“运行”里直接输入"ftp qint.ithot.net"。如果你的FTP服务器不是用的21默认端口,假如端口是2121,那么此步的命令应在后面空格加2121,即“open qint.ithot.net 2121” 3.username 提示你输入用户名 4....
阅读全文
摘要:一.配置虚拟域名 1.为了模拟DNS,在本地hosts文件中设置一下 2.模拟三个项目 3.在apache中配置虚拟主机去到apache的sites-available目录里复制三次default文件,然后在复制的文件里修改三个地方: 去到sites-enable目录里复制default文件三次,然后利用ln -s把复制的文件分别指向sites-available里对应的文件 4.重启apa...
阅读全文
摘要:1.先用apt-get update获取软件源列表 2.安装apache输入apache2 -v显示以下信息表示安装完成 3.安装php 输入php5 -v显示以下信息表示安装完成 查看是否加载libphp5.so 4.安装mysql 查看是否安装了mysql.so 以上信息显示未安装mysql.so安装mysql.so 再次检查是否安装了mysql.so 5.重启apache和mysql以确保...
阅读全文
摘要:输入"uname -a ",可显示电脑以及操作系统的相关信息。 输入"cat /proc/version",说明正在运行的内核版本。输入"cat /etc/issue", 显示的是发行版本信息lsb_release -a (适用于所有的linux,包括Redhat、SuSE、Debian等发行版,但是在debian下要安装lsb)来自为知笔记(Wiz)
阅读全文
摘要:如果使用 MySQL 数据库忘记了账号密码,可以通过调节配置文件,跳过密码的方式登数据库,在数据库里面修改账号密码,一般默认的账号问 root编辑 MySQL 配置文件 my.cnf注意: 以实际 my.cnf 配置文件路径为准vim /etc/my.cnf在[mysqld]下skip-grant-tables #增加重启 MySQL 服务以实际 MySQL 启动脚本路径为准/etc/init....
阅读全文
摘要:一.语法explain 例如: explain select * from t3 where id=3952602;二.explain输出解释+----+-------------+-------+-------+-------------------+---------+---------+-------+------+-------+| id | select_type | table | t...
阅读全文
摘要:1.控制器输出 return $this->fetch("index/hello"); $this->display 单字母函数去掉了 如:M() D() U() S() C() 官方说明地址:http://www.kancloud.cn/thinkphp/thinkphp5_quickstart/
阅读全文
摘要:一 HTTP协议 基于HTTP协议的client与server请求包含4个过程: 1.建立TCP套接字连接;(HTTP使用面向连接的TCP作为运输层协议,保证了数据的可靠传输,但HTTP协议本身是无连接的) 2.发送HTTP请求报文; 3.接收HTTP应答/响应报文; 4.释放TCP套接字连接。 HTTP协议在TCP/IP协议栈的位置如下图所示二HTTP报文的种类:请求报文:从客户端向服务器端发送...
阅读全文
摘要:在计算机网络的学习中TCPi协议与Http协议是我们必须掌握的内容,其中Tcp协议属于传输层,而Http协议属于应用层,本博客主要讲解Tcp协议中的三次握手与四次挥手,关于Http协议感兴趣的可以参看我的博客:HTTP协议详解 一.三次握手: 第一次握手:建立连接时,客户端发送syn包(syn=j)
阅读全文
摘要:explain分析索引SQL语句 <!--more--> 队列解决抢购商品问题(队列满就通知用户,商品已抢完) redis数据转存到硬盘配置 有三种方式:隔多少时间存储、多少次请求存储、每次都存储 Redis的数据回写机制分同步和异步两种, 同步回写即SAVE命令,主进程直接向磁盘回写数据。在数据大
阅读全文
摘要:1. OSI , TCP/IP ,五层协议的体系结构OSI分层(7层) :物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层) :网络接口层、网际层、运输层、应用层。五层协议(5层) :物理层、数据链路层、网络层、运输层、应用层。每一层的作用如下 :物理层:激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。该层为上层协议提供了一个传...
阅读全文
摘要:1.队列先进先出,栈先进后出。2. 对插入和删除操作的"限定"。栈是限定只能在表的一端进行插入和删除操作的线性表。队列是限定只能在表的一端进行插入和在另一端进行删除操作的线性表。 从"数据结构"的角度看,它们都是线性结构,即数据元素之间的关系相同。但它们是完全不同的数据类型。除了它们各自的基本操作集不同外,主要区别是对插入和删除操作的"限定"。 3.遍历数据速度不同。栈只能从头部取数...
阅读全文
摘要:面向对象包括三个特征:继承、封装、多态。 类的继承性是指从已有的一个类来extends子类,子类具有了父类的所有特征,同时,子类也可以有新的特性。比如:人是一个类,男人具有了人类的所有的特性,比如思考,比如劳动。同时,男人也有新的特性,比如男人会长胡子。 类的封装是指类把所有的操作都封闭起来,仅仅提供接口出来让其他人使用,使用的人没有必要懂得类里面的操作,只需要懂得操作接口就可以了。比如开汽车,我...
阅读全文
摘要:现在假设如果我们在客户端(客户端)浏览器中输入http://www.baidu.com,而baidu.com为要访问的服务器(服务器),下面详细分析客户端为了访问服务器而执行的一系列关于协议的操作: 1、客户端浏览器通过DNS解析到www.baidu.com的IP地址220.181.27.48,通过这个IP地址找到客户端到服务器的路径。客户端浏览器发起一个HTTP会话到220.161.27.48,...
阅读全文
摘要:优点有了索引.对于记录数量很多的表,可以提高查询速度.缺点索引是占用空间的.索引会影响update insert delete速度来自为知笔记(Wiz)
阅读全文
摘要:LRU是Last Recent Used 缩写,做为一种缓存算法,将最近较少使用的缓存失效。memcache采用了该算法。如下采用了一种PHP的实现方式。该算法将每次新增的内容,放到缓存顶部,达到缓存极限时,将缓存底部的内容清除。可以通过如下PHP代码来模拟。capacity = $capacity; $this->hashmap = array(); $this...
阅读全文
摘要:MySQL数 据库引擎取决于MySQL在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译MYSQL。在缺省情况下,MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。如果技术高超,还可以使用MySQL++ API自己做一个引擎。下面介绍几种数据库引擎: ISAM:ISAM是一个定义明确且历经时间考验的数...
阅读全文
摘要:1.开启Hyper-V 程序和功能 启用或关闭Windows功能 选中Hyper-V 2.下载,双击安装,然后一路next 国内下载地址:http://mirrors.aliyun.com/docker-toolbox/windows/docker-for-windows/stable/ 2.启动,
阅读全文
摘要:PHP的自带函数LRU算法实现MYSQL索引优缺点mysql引擎来自为知笔记(Wiz)
阅读全文
摘要:Resource is out of sync with the file system解决方案: 来自为知笔记(Wiz)
阅读全文
摘要:smartImageView:把图片url转换成字符串显示asynchttpclient:实现get、post方式提交数据xutils:实现断点续传来自为知笔记(Wiz)
阅读全文
摘要:pasting [1]Android下四大组件都运行在主线程下 [2]服务是在后台下运行 没有界面的activity service 是 activity的大爷 进程的优先级 [1]Foreground process 前台进程 优先级最高 相当于activity执行了onResume方法 用户正在
阅读全文
摘要:1 fragment入门 ViewGroup特点 可以有自己的孩子 [1]通过onCreateView 这个方法Fragment可以加载自己的布局 [2]name属性指定的是一个我们自己定义的Fragment [3]直接在布局中声明即可2 动态替换fragment [1]获取Fragment的管理者FragmentManager fragmentMana...
阅读全文
摘要:1 为什么需要内容提供者(contentProvider) 使用内容提供者 把私有的数据库内容给暴露出来2 内容提供者原理 [1]内容提供者把数据进行封装然后提供出来 其他应用都是通过内容解析者来访问 [2]定义内容提供者 定义一个类继承ContentProvider 3 实现内容提供者步骤 [1]定义一个类继承contentP...
阅读全文
摘要:1计算机表示图形的几种方式 bmp:以高质量保存 用于计算机 jpg:以良好的质量保存 用于计算机或者网络 png:以高质量保存 图片大小的计算公式:图片的总像素*每个像素的大小 (多出的一点是图片的信息) 单色:每个像素最多可以表示2种颜色 要么是黑要么是白 那么只需要使用长度为1的二进制位来表示 那么一个像素占1/8byte 16色...
阅读全文
摘要:Mem类代码:class Mem{ //类型是memcache或memcached private $type = 'Memcached'; //会话 private $m; //缓存时间,0代表永久 private $time = 0; //错误信息 private $error; //调试模式 private $debug = 'tr...
阅读全文
摘要:memcache 服务器端安装(命令安装)yum install memcached启动memcached 查看memcached是否正常启动 memcache客户端安装前提:下载好安装包 1.安装libmemcached(编译安装) 解压: 进入安装目录: 配置: 编译并安装: 2.为php安装memcached扩展(编译安装) 解压: 进入安装...
阅读全文
摘要:文档所在:http://php.net/manual/zh/book.memcached.php 1.在php使用memcached操作之前要实例化memcached:【系统类】 2.添加服务器: 3.查看服务器状态: 4.查看服务端的版本号: 【数据类】5.增加数据 【1】 【2】先检查是否有该键缓存,若有则覆盖该缓存的值,若没有则新建该缓存(推荐) 【3】增加多条数据: 6.获取数...
阅读全文
摘要:linux下安装Git环境,只需要执行一行命令 yum install git
阅读全文
摘要:1 如何创建一个新的Activity [1]Android的四大组件都要在清单文件里面配置 [2]如果你想让你的应用有多个启动图标,你的Activity需要配置 如下 [3]Activity下的lable和icon属性可以和Application节点的属性不一样 默认用Appli...
阅读全文
摘要:1 为什么需要广播接收 [1]有什么样的人员听广播 [2]想听广播必须有电台 [3]Android系统内部已经定义好了电台 已经定义好了一些广播事件 比如 外拨电话 短信到来 sd卡状态 电池电量.... [4]使用broadcastReceiver去接收系统已经定义好的这些事件 [5]定义广播接收者的目的是为了方便开发者进行开发 2 广播...
阅读全文
摘要:1 数据库介绍 sqlite 问:什么情况下用数据库? ----------有大量相似结构的数据需要存储的时候 File file = new File("info.txt);2 数据库的创建 定义一个类继承sqliteOpenHelper3 数据库的oncreate方法和onupgrade方法 [1]使用SQLite Expert Professional这个工具可...
阅读全文
摘要:1使用httpurlconnection方式把数据提交到服务器 基于什么协议?http get方式:组拼URL地址把数据拼到url上 有大小限制 1kb 4kb post方式: post方式提交安全 没有大小限制 post方式和get方式区别: [1]路径不同 [2]请求方式不同 [3]post方式要自己组拼请求体的内容 ...
阅读全文
摘要:1网页源码查看器 httpurlconnection类:用于发送或接收数据 ScrollView 只能有一个亲孩子(但可以有很多孙子辈)package com.phone.weblook;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import android.app...
阅读全文
摘要:1、1G-4G的介绍 1G 大哥大 2G 小灵通 gsm 发短信 3G 沃 7.2M 4G :lte 100M/s 5G :华为 6亿美金 10G/s 最主要的区别:速度的不同2、Android操作系统的介绍 安迪鲁宾 logo设计师去厕所发现灵感3、Android系统版本介绍Android版本对应的api级别2.3-----103.0----...
阅读全文
摘要:1 测试的相关概念 [1]好的软件不是开发出的 是不断测试出来的1.1根据是否知道源代码 黑盒: 白盒:1.2根据测试的粒度 方法测试 单元测试 集成测试 系统测试1.3根据测试的暴力程度 压力测试 冒烟测试 谷歌工程师给我们提供了一个monkey + 1000 指令可以进行压力测试2 单元测试 [1]定义一个类继承Android...
阅读全文
摘要:Redis的官方下载: http://redis.io/download 步骤一:下载安装包 步骤二:编译源程序 步骤三:移动文件、便于管理 步骤四:启动 Redis服务 查看是否启动成功 查看端口是否被占用 步骤五:客户端连接 步骤六:停止Redis实例 步骤七:Redis的配置 PHP连接red
阅读全文
摘要:操作方法 1.添加数据【1】set方法<!--more-->【2】setnx方法 【3】setexex是expire的意思 【4】setrange方法 【5】mset方法 【6】msetnx方法只要有一个已经存在的key,那么所有都不会设置成功 2.获取数据 【7】get方法 【1】set方法 【2
阅读全文
摘要:一、键值相关命令 【1】keys 【2】exists 【3】del【4】expire(单位为秒)【5】ttl查看一个key还有多长时间过期,直至返回值为-1说明此值已过期【5】move 【6】persist 【7】randomkey 【8】rename 【9】type 二、服务器相关命令【1】pin
阅读全文
摘要:1.安全性 设置客户端连接后进行任何其他指定前需要使用的密码 设置方法: 在配置文件中如下图设置 授权方法: 【1】auth+密码 【2】登录时授权 2.主从复制 配置方法: 3.事务处理 设置一个事务:multi....exec 取消一个事务:multi....discard 使用discard命
阅读全文
摘要:<?php //实例化 $redis = new Redis(); //连接服务器 //默认端口是6379,可不写 $redis->connect("localhost"); //授权,即登录密码 $redis->auth("beijing"); //相关操作 $redis->set("name",
阅读全文