首先我们先找到缓存驱动类里的,handler()方法,这个方法是返回Redis类的实例化对象的.
这就是实例化对象,包括了options配置项、handler资源句柄、tag标签.实际上这里的handler是new
Redis()的对象实例.只要在外部拿到handler资源句柄,则可以对redis的操作进行扩展了.
在cache类里新增一个getHandler方法.
然后我们就可以在控制器调用了
打印的就是这个redis对象了
这里需要注意的是:
一个是如果你要调用原生的redis方法
基本的用法都讲完了.
此时此刻呢就愉快的开始扩展redis方法吧.
先找到这个类
这个类里并没有list的相关操作方法,那我们就来扩展list的相关方法.
这里的话,我就举一个例子了.
在控制器里去调用
这样就写入成功了.
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:< FrameWork框架入门教程>>及< 希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助. PHP基础 Author:陈庆平 (Andych) 第一段:PHP入门 第二段:PHP变量 ①.、php变量的命名 变量由字母,数字,下划线组成 ①.)变量名区分大小写 $stu_name; $stu_name,$stu_age; isset() 判断变量是否设置,返回true或false define("",常量值) defined() 判断常量是否设置,返回true 或 false 第三段:PHP数据类型 变量的数据类型 ①.)布尔型(boolean) 算术运算符 逻辑运算符 比较运算符 赋值运算符 加一/减一运算符 第四段:运算符 三元运算符 $c = $a$b ? "good":"bad" 第一段:PHP流程控制语句 ①.、分支结构 格式1: if语句 if(条件) { 语句集; } if(条件){ }else{ If(条件1) 语句集1; 多分支结构: switch语句 格式: switch(表达式) { case 常量: 语句;break; .......... default: 语句;break; While循环 While(表达式) for循环 break 和 continue 语句 break 强行终止当前循环 continue 终止当前执行语句,继续执行循环 的下一句 PHP Author: 陈庆平(Andych) 数组 分类: 枚举数组、关联数组和多维数组 枚举数组:下标为整数的数组 例如:$stu[1] = " 张三" 关联数组:用字符串做为下标的数组 例如:$stu["name"] = " 张三" 数组初始化 $stu[] = "name" $stu[] = "sex" 注意:数组下表不需要按顺序分配 例题:排序数组元素(任意10 个数排 序) 使用array 函数 例如: $stu = array("james","jack","Toms") 数组的起始下标可以不从0 开始 $arr = array["name"="james","sex"="boy"] 数组的应用 ①. 、unset() 删除数组元素 unset($arr) 删除整个数组 unset($arr[0]) 删除单个数组元素 foreach($arr as $value) 输出数组中的元素 foreach($arr as $key=$value) 输出数组中的下标和元素 each() 返回数组中当前的键/值对并 将数组指针向前移动一步 user","Toms","Andych"); $foo = each($arr); print_r($foo); 结果: list() 把数组中的值赋给一些变量 如:list($var) = $arr 注意:list 函数仅用于数组下标从0 开始 的数组 current() 返回数组中当前元素 如:current($arr) next() 将数组的指针移到下一个元素上 如:next($arr) prev() 将数组的指针移到上一个元素上 如:prev($arr) range() 自动生成一个包含指定范围单元的 数据 count() 统计数组中元素个数 如:count($arr) array_count_values() 统计数组中相同 元素的个数 PHP 函数 函数 独立完成特定功能的代码块 内置函数 ①. 、echo() 输出一个或多个字符串 如:echo " 程序设计基础" 如:print("PHP 程序设计") 用法同echo 注意: Print start // 任意行文字,可以包含HTML 代码 start; 输出任意行字符串 如:include("a.php") include包含的文件中return语句的使用 $b = include("a.php"); If($b=="ok") echo "File is Ok"; a.php文件 return "ok"? 注意:在包含文件中函数执行到return将会终止. 如:require("a.php") 功能同include方法一样 用户自定义函数 ①.、函数声明 Function func_name($args) //函数体 关键字含义: function:用于声明自定义函数的关键字 Func_name:声明的函数名 $args:参数名称 ①.、定义无参函数 function fun() Echo "定义无参数函数"; (1 )按值传递 $num = 100; Function func($a) $a = $a*10; Func($num) Function func($b) $b = $b + 10; Func($sum); 修改如下参数php.ini allow_call_time_pass_reference = on function func($a,$num=100) return $a*$num; 注意:尽量不要将默认值参数定义在第一个参数 位置,容易造成定义默认值实效 return value; 返回函数的内容 如果一个变量名后有括号,PHP 则搜索与变 量值相同的函数.并且执行它 Function foo() Echo " 执行func() 函数" ; $func = 'foo'; $func(); // 变量函数 显示结果:执行func() 函数 变量的作用域 ①. 、global 语句 该语句允许从脚本的任何位置访问函数内部 定义的变量以及从函数内部访问函数外部的 变量 function foo() global $a; echo $a; $func = "foo"; $func(); 静态变量仅在局部函数中存在,当程序 离开该函数时,它值不会丢失 $a = 0; $a ++; foo(); //0 static $a = 0; foo(); // 1 日期和时间的处理 获取日期和时间 date() 按指定格式返回系统的时间字符串 如:date("d") 返回月份中的第几天 a - "am" 或是 "pm" A - "AM" 或是 "PM" D - 星期几,三个英文字母; 如: "Fri" F - 月份,英文全名; 如: "January" l - 星期几,英文全名; 如: "Friday" M - 月份,三个英文字母; 如: "Jan" S - 字尾加英文序数,二个英文字母; 如: "th" ,"nd" U - 总秒数 < PHP 正则表达式 正则表达式 正则表达式是一种可以用于模式 匹配和替换的强有力的工具. 正则表达式可以让用户通过使用一系列的特殊字符构建匹配模 式,然后把匹配模式与数据文件、程序输入以及WEB 页面的表单输 入等目标对象进行比较,根据比较对象中是否包含匹配模式,执 行相应的程序. 例: ^http 表示匹配以http 开头的所有字符 [a-z] 匹配所有小写字符 abc 匹配字符串abc 正则表达式的元字符 匹配正则表达式模式 preg_match(pattern,subject) 表示在subject字符串中搜索与pattern给出的正则表达式相匹配的 内容.该函数返回pattern所匹配的次数(0次或1次).0次表示没有匹配 结果,函数返回一个false 例如: $str = "php is a good language"; preg_match("/php/",$str); 模式,是正规表达式最基本的元素,它们是一组描述字符串特 征的字符.模式可以很简单,由普通的字符串组成,也可以非常 复杂,往往用特殊的字符表示一个范围内的字符重复出现,或表 示上下文.我们先看一些正则表达式中的特殊字符. 字符: ^ 意义:表示匹配的字符必须在最前边. preg_match(/^A/,"A good language") // 匹配成功 字符: $ 意义:与^ 类似,匹配最末的字符. preg_match(/t$/,"eat") // 匹配成功 字符* 意义:匹配* 前面的字符0 次或n 次. 例如: preg_match("/do*g/","doog") // 匹配成功 字符+ 意义:匹配+ 号前面的字符1 次或n 次.等价于{ 1, } . 例如:preg_match("/do+g","dg") // 不匹配 字符? 意义:匹配? 前面的字符0 次或1 次. 例如:preg_match("/do?g/","dg") // 匹配 字符. 意义:( 小数点) 匹配除换行符外的所有单个的字符. 例如:/.n/ 匹配"nay, an" 中的'an' ,但不匹配'nay' . 字符(x) 意义:匹配'x' 并记录匹配的值. 例如:/(foo)/ 匹配和记录"foo bar." 中的'foo' .匹配子串能被结果数组中的素[1], ...,[n] 返回 字符x│y 意义:匹配'x' 或者'y' . 例如:/green│red/ 匹配"green apple" 中的'green' 和"red apple." 中的'red' . 字符{ n } 意义:这里的n是一个正整数.匹配前面的n个字符. 字符{ n, } 意义:这里的n是一个正整数.匹配至少n个前面的字符. 字符{ n,m } 意义:这里的n和m都是正整数.匹配至少n个最多m个前面的字符. 字符[xyz] 意义:一字符列表,匹配列出中的任一字符.你可以通过连字符- 指出一个字符范围. 例如:[abcd] 跟[a-d] 一样.它们匹配"brisket" 中的'b' 和"ache" 中的'a','c' . 字符[^xyz] 意义:一字符补集,也就是说,它匹配除了列出的字符外的所有东西. 你可以使用连字符- 指出一 字符范围. 例如:[^abc] 和[^a-c] 等价,它们最早匹配"brisket" 中的'r' 和"chop." 中的'h' . 字符 空格 意义:匹配一个空格( 不要与b 混淆) 预定义字符和字符类 \d 数字 \D 非数字 \w 单词字符 \W 非单词字符 表示匹配一个非单词字符 字符\b 意义:匹配一个单词的分界线,比如一个空格( 不要与空格混淆) 例如:/\bno/ 匹配"noonday" 中的'no' ,/ly\b/ 匹配"possibly yesterday." 中的'ly' . PHP 字符串 格式化字符串 ①. 、trim() 删除字符串开始和结束位置的空格 格式:trim(str) 格式:ltrim(str) 格式:rtrim(str) 格式:strtolower(str) 格式:strtoupper(str) 格式:ucfirst(str) 格式:ucwords(str) HTML 文本格式输出 str 中包含\n 格式:htmlspecialchars(str,quote_style) str:要转换的字符 quote_style:转换方式,主要对单引号和双引 号进行转换.值如下: ENT_COMPAT 双引号被转换 ENT_QUOTES 单引号和双引号都被转换 ENT_NOQUOTES 任何一个引号都不被转换 主要用在防止恶意脚本注入和数据库数据的存储 格式:strip_tags(str,[char]) str :要去除的字符串 char :要保留字符串 如:strip_tags("a href=''new/a",a) 和数据库相关 ①. 、addslashes() 按照一定规则将字符串进行转义 格式:addslashes($str) 如:addslashes("Hello ,'jack'") 结果:Hello,\'jack\' magic_quotes_gpc = On 自动对 get post cookie 的内容进行转义 get_magic_quotes_gpc ()检测是否打开 magic_quotes_gpc 格式:stripslashes($str) 字符串的连接和分割 ①. 、explode() 按指定分割符将字符串分开 格式:explode(str,$str[,limit]) str :分割符 $str :要分割的字符串 limit :分割后数组长度(可选) 成一个字符串 格式:implode(str,$arr) str :连接符 $arr :字符串数组 注意:implode() 函数有个别名函数join 格式:strtok($str,str) 注意:若想输出所有内容,则以后函数中不需 要再加$str了. $newstr = strtok($str,";") while($newstr ) echo $newstr; $newstr = strtok(";") 串. 格式:substr($str,start[,length]) $str :指定的字符串 strat :起始位置 length :取出的字符串的长度.该参数可选 字符串比较 ①. 、strcmp() 字符串比较, 返回值为0 ,正数和负数 注意:比较的字符串是区分大小写的 小写 字符串查找 ①. 、strstr() 在指定的字符串中查找指定的字符 $domain = strstr($email,"@"); 注意:如果含有多个,则从第一次出现的位置 开始输出,若没有则返回FALSE 用处:取路径中文件名 $path = "c:\\a\\b\\aa\\a.html"; $filename = strrchr($path,"\\"); echo $ filename; 定位字符串 ①. 、strpos() 在指定的字符串中查找子字符串第 一次出现的位置,找不到返回false 如:echo strpos("Hello","l") 出现的位置 字符串替换 ①.、str_replace() 将新的字符串替换目标字符串 中指定的字符串 格式:str_replace($search,$replace,$subject) 如: $subject = "Hell jack"; echo str_replace("Hell","Hello:",$subject); $search:要被替换的字符串 $replace:替换的字符串 $subject:目标字符串 格式:substr_replace($Str,$rep,$start[,length]) $str :原始字符串 $rep :替换后的新字符串 $start :起始位置 $length :替换的长度,该项可选 如:$subject = "Hell jack"; echo substr_replace($subject,"Hell",1); // 结果:HHell PHP函数 Author:陈庆平(Andych) ①.、定义 ①.)无须在引用函数之前定义 ①.、echo()函数 功能:输出一行字符串 格式:echo "字符串"; 格式:print "字符串"; 功能:包含并运行指定的文件 . 格式:include "a.php"; 说明:如果上面的函数用在条件语句中,一定要写在{}内. 被包含的文件中可以使用return 语句. If($a==$b) include "a.php"; include "b.php"; 自定义函数 格式: 根据函数是否包含参数:无参函数 和 有参函数 例:定义函数,计算100以内偶数之和 function func_sum() $sum = 0; for($a=0;$a=100;$a++) func_sum(); //调用函数 ①.)按值传递 例:写一函数,求任何两个数的和 function func_name($a,$b) $sum = $a + $b; echo $sum; $myNum = 100; function func_mul($a) func_mul($myNum); //函数调用,带地址符号 echo $myNum; 低版本不默认支持地址传递,修改如下参数php.ini 定义函数时,给参数赋值;在调用函数若不指定参数内容, 则自动调用参数默认值. 例: function func_def($style="默认值") echo $style; func_def(); //不带参数,输出 "默认值" func_def("赋给参数"); //给参数,输出 "赋给参数" 功能: 函数返回值 格式: return "值" function func_returnval() return "return value"; ①.、输出. Python: print 默认换行,不换行要加逗号. PHP: echo 可以输出多个变量;print ()只输出一个变量,且成功返回值为1,失败为0;print_r() 只输出数组;die() 先输出,后关机;printf() 格式化输出字符串;var_dump()可以判断一个变量的类型与长度,并输出变量的数. PHP:七个数据类型:String,Integer,Float,Boolean,Array,Object,NULL Python:五个标准的数据类型:Number,String,List,Tuple,Dictionary 其中包括Numberint,long,float,complex PHP:三种访问权限,由高到低为public,protected,private Python: _foo代表不能直接访问的类属性,需要通过类提供的接口访问;__foo代表类的私有成员;__foo__特殊方法专用的标识 PHP: 弱类型语言,用$定义变量,一般情况下变量引用变量时也要带着$(区别于Java), 在类中定义变量时还要加var ,定义方法时 function test (){} 要用function声明. Python:弱类型语言,定义变量时直接写,除了访问权限修饰符不需要加别的.定义方法时 def __init__(self,name): 要用def声明,self是必须要加的常量,代表该类的对象,方法体不用{}. 列表是 Python 中最常用的序列数据类型之一. 列表中的元素是有序可重复的. 列表中的元素可以是不同数据类型,甚至可以嵌套. 和字符串一样,列表可以被索引和截取,列表被截取后返回一个新列表. 和字符串不一样,列表是可变数据类型,其值可以被改变. 与字符串的索引一样,列表也使用下标索引来访问列表中的值. 列表变量 [ 索引值 ] 列表同样可以被截取 列表变量 [ 头下标:尾下标 ] 列表是可变类型,通过赋值语句直接修改对应位置的元素 列表变量 [ 索引值 ] = 新元素 要删除指定位置的元素,用 pop(i) 方法,其中 i 是索引位置 删除指定位置的元素还可以使用 del 语句 删除指定内容的元素使用 remove(obj) 方法 - end - 以上就是土嘎嘎小编为大家整理的phplist数据类型相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!求php函数集,急!
python与php的区别 专家解析python与php的四大区别
数据类型 -- List(列表)