随笔分类 - PHP
摘要:TP的缓存主要依赖Cache类,Cache类其实是一个代理类,Cache类通过getInstance静态方法来获取缓存实例,而getInstance方式实际是调用Cache类的connect方法,该方法类似于工厂返回对应缓存类型的驱动实例,这里以Redis为例,那么这里返回的就是CacheRedis...
阅读全文
摘要:修复分页BUG,原有代码查询到最后一页就一只查询最后一页$this->nowPage = $this->nowPage>0 ? $this->nowPage : 1; $this->maxPage = ceil($this->total/$this->rows); ...
阅读全文
摘要:接触的第一个PHP框架就是TP,在使用的了一段时间后就放弃了,说实话TP的弊端挺多,之后又接触laravel框架,慢慢的就爱上laravel这个框架了。这段时间由于公司的原因,又不得不使用thinkphp框架,在这里分享下使用心得。TP框架这一块,框架的耦合度高,整体代码半面对对象半过程化,整体使用...
阅读全文
摘要:这段时间对模型做了升级和优化,并将版本更新到TP3.2. 下载下载后请将目录放置TP的Library目录下1.数据节点优化,原来的节点为模型的名称或者表名,现在更新为定义关系的方法名 public function test2(){ return $this->hasOne('T...
阅读全文
摘要:1.增加多对多关系的处理 /** * 定义关系 * @return array */ public function test4(){ //参数说明 //关联的模型 //主表关联字段 //关联中间表 ...
阅读全文
摘要:为了说明问题,假设现在有表test1,test1有从表test2;test1属于test3,test1和test4多对多,关联表test1_test4。1.定义关系class Test1Model extends WdModel { public function test2(){ ...
阅读全文
摘要:首先呢在laravel5中默认是没有提供验证码的,这里我们需要使用第三方提供的库:gregwar/captcha通过composer安装:在composer.json的require中加入"gregwar/captcha": "dev-master",具体代码如下"require": { ...
阅读全文
摘要:auth = $auth; $this->registrar = $registrar; //注册auth.attemp事件 //加入验证码的验证 $this->auth->attempting(function()use($request){...
阅读全文
摘要:key = $key; $this->data = $data; }}class DoubleLink implements Countable,Iterator { private $head; // 头指针 private $tail; // 尾指针 pri...
阅读全文
摘要:通过控制视图模板路劲来动态切换主题App::before(function($request){ $paths = Terminal::isMobile() ? array(__dir__.'/views/mobile') : array(__dir__.'/views/pc'); V...
阅读全文
摘要:1.字符串可以里面的字符可以像数组一样访问,比如$s = "123";$s[1]就等于2,如果字符串为中文则会乱码,需要使用mb_substr进行截取;2.php中的单引号(' ')是不需要编译解释直接输出的,双引号(" ")是需要经过编译解释的,然后再输出,所以单引号比双引号输出快,二双引号可以再...
阅读全文
摘要:首先是权限码的存储方式:从数据库中取最大的权限码对其做位运算右移( 0 可以验证用户是拥有该权限的,相反则没有。
阅读全文
摘要:通过在函数前添加&可以获取函数返回值的引用,如:function &test(){return 10;}
阅读全文
摘要:实现该接口可以使用count()方法来获取集合的总数
阅读全文
摘要:在所有语言中,所有迭代器都必须具有如下4想功能:1.回滚迭代器到第一个元素2.潜行到下一个元素3.获取当前元素4.验证是否到最后一个元素了在PHP中我我们可以通过实现iterator来实现迭代器该接口提供了5个方法1.rewind 回滚迭代器到第一个元素2.next潜行到下一个元素3.current获取当前元素4.valid验证是否到最后一个元素了5.key 当前元素的键值
阅读全文
摘要:1.预处理语句可以把它看成想要运行的SQL的一种编译过的模板,他可以使用变量作为参数来定制,预处理语句可以带来两大好处:1.查询仅需要解析一次,但可以使用相同或者不同的参数执行多次,从而避免重复的分析,编译,所以预处理语句占用资源更少,因而运行数据更快。2.提供给预处理语句的参数不需要用引号括起来。驱动程序会自动处理,如果应用程序只使用预处理语句,可以确保不会发生SQL注入。2.大数据处理在PDO:statement::bindParam()或PDO:statement::bindColumn()调用调用中使用PDO::param_LOB类型可以让PDO使用大数据类型。POD::param_L
阅读全文
摘要:对数据库进行分表是对大数据处理的一种常见处理方案,但是分表会带来查询时多个表之间的union的问题,我们可以使用sphinx全文搜索引擎,建立多个索引来解决这个问题
阅读全文
摘要:在PHP中session默认是以文件的形式存储于服务器的而客户端和服务端则是通过session_id来完成握手的,默认情况下PHP会将session_id存储于cookie中,用户每次请求时该session_id都会通过cookie传到服务器,下面是php.ini中的相关配置信息:session.s...
阅读全文

浙公网安备 33010602011771号