摘要: 第一种回答那么,最常见的一种回答是:设置Session的过期时间,也就是session.gc_maxlifetime,这种回答是不正确的,原因如下:1.首先,这个PHP是用一定的概率来运行session的gc的,也就是session.gc_probability和session.gc_divisor(介绍参看深入理解PHP原理之SessionGc的一个小概率Notice),这个默认的值分别是1和100,也就是有1%的机会,PHP会在一个Session启动时,运行Sessiongc.不能保证到30分钟的时候一定会过期.2.那设置一个大概率的清理机会呢?还是不妥,为什么?因为PHP使用statSe 阅读全文
posted @ 2013-05-28 16:56 joy696163 阅读(301) 评论(0) 推荐(0)
摘要: 原版是JAVA的,但我改成了PHP的,想看一下PHP是不是也能这样搞~刘备要到江东娶老婆了,走之前诸葛亮给赵云(伴郎)三个锦囊妙计,说是按天机拆开解决棘手问题,嘿,还别说,真是解决了大问题,搞到最后是周瑜陪了夫人又折兵呀,那咱们先看看这个场景是什么样子的。先说这个场景中的要素:三个妙计,一个锦囊,一个赵云,妙计是小亮同志给的,妙计是放置在锦囊里,俗称就是锦囊妙计嘛,那赵云就是一个干活的人,从锦囊中取出妙计,执行,然后获胜,用 PHP 程序怎么表现这个呢 <?php//首先定一个策略接口,这是诸葛亮老人家给赵云的三个锦囊妙计的接口interface IStrategy{ function 阅读全文
posted @ 2013-05-28 15:42 joy696163 阅读(349) 评论(0) 推荐(0)
摘要: 24种设计模式介绍与6大设计原则(PHP版)之代理模式【ProxyPattern】什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道被代理人能做哪些事情不能做哪些事情吧,那就是两个人具备同一个接口,代理人虽然不能干活,但是被代理的人能干活呀。比如西门庆找潘金莲,那潘金莲不好意思答复呀,咋办,找那个王婆做代理,表现在程序上时这样的:<?php//定义一种类型的女人,王婆和潘金莲都属于这个类型的女人 interface KindWomen { //这种类型的女人能做什么事情呢? public function makeEyesWithMan();//.. 阅读全文
posted @ 2013-05-28 15:16 joy696163 阅读(2231) 评论(2) 推荐(1)
摘要: 最初在设计模式 一书中,许多设计模式都鼓励使用松散耦合。要理解这个概念,让我们最好谈一下许多开发人员从事大型系统的艰苦历程。在更改一个代码片段时,就会发生问题,系统其他部分 —— 您曾认为完全不相关的部分中也有可能出现级联破坏。该问题在于紧密耦合 。系统某个部分中的函数和类严重依赖于系统的其他部分中函数和类的行为和结构。您需要一组模式,使这些类能够相互通信,但不希望将它们紧密绑定在一起,以避免出现联锁。在大型系统中,许多代码依赖于少数几个关键类。需要更改这些类时,可能会出现困难。例如,假设您有一个从文件读取的 User 类。您希望将其更改为从数据库读取的其他类,但是,所有的代码都引用从文件读取 阅读全文
posted @ 2013-05-28 15:01 joy696163 阅读(280) 评论(0) 推荐(0)
摘要: 先引用鸟哥的原文:http://www.laruence.com/2009/07/23/994.html “PHP数组的定义,本质上是一种键-值映射的关系,算是一种散列表(哈希表)。PHP的数组,关联数组,对象属性,函数表,符号表,等等都是用HashTable来做为容器的。PHP的Hash采用的是目前最为普遍的DJBX33A (Daniel J. Bernstein, Times 33 with Addition), 这个算法被广泛运用与多个软件项目,Apache, Perl和Berkeley DB等. 对于字符串而言这是目前所知道的最好的哈希算法,原因在于该算法的速度非常快,而且分类非常好. 阅读全文
posted @ 2013-05-28 14:27 joy696163 阅读(658) 评论(0) 推荐(0)
摘要: PHP从诞生以来就受到广大编程爱好者的喜欢,成为中小站长的好帮手,并培养了大量的PHP编程人员,但是随着PHP的应用越发广泛,很多时候已不限于从事中小网站的应用,一些大型PHP项目也屡见不鲜。 当我们选择PHP开发大型项目时,就不得不考虑开发效率、开发规范、后期维护等问题,这时大家往往会选择一款人们所认可的开发框架,目前所流行的Zend Framework、Yii、Symfony、CodeIgniter、CakePHP等都声称有着开发大型应用的能力。 新框架层出不穷,但当我们真正应用这些框架去实现产品又总是会有各种不同的问题产生: 一、大型框架的背后往往有着较为深厚的结构理论... 阅读全文
posted @ 2013-05-28 13:56 joy696163 阅读(238) 评论(0) 推荐(0)