PHP单例模式模拟Java Bean实现方法示例_第1页
PHP单例模式模拟Java Bean实现方法示例_第2页
PHP单例模式模拟Java Bean实现方法示例_第3页
PHP单例模式模拟Java Bean实现方法示例_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第PHP单例模式模拟JavaBean实现方法示例本文实例讲述了PHP单例模式模拟JavaBean实现方法。分享给大家供大家参考,具体如下:

问题:

根据如下杨辉三角形

实现一个get_value($row,$col)方法:

(前一个由于代码是手机编辑的,很乱,重新发下)只是为了实现这个方法,很简单,几行代码就能实现,但如果行和列的值稍微大点,你就发现,运行时间很长。所以就这次的题做了个稍微复杂点的例子,说明下单例模式的使用、static的使用、模拟JavaBean、static的使用、递归函数案例等。

*authorWinter

*2016-11-22

*PHP的单例模式

*模拟JavaBean

*ClassPhp_bean

classPhp_bean{

privatestatic$_instance=null;

privatefunction__construct(){}

private$hit=0;//命中次数

private$array=array();//缓存

private$itratorCount=0;//迭代次数

publicfunctionadd_itratorCount(){

$this-itratorCount++;

publicfunctionget_itratorCount(){

return$this-itratorCount;

publicfunctionset_cache($row,$col,$value){

$this-array[$row."_".$col]=$value;

publicfunctionget_cache($row,$col){

if(isset($this-array[$row."_".$col])){

return$this-array[$row."_".$col];

}else{

returnfalse;

publicfunctionadd_hit(){

$this-hit++;

publicfunctionget_hit(){

return$this-

publicstaticfunctioninstance(){

if(self::$_instanceinstanceofself)returnself::$_instance;

self::$_instance=newself;

returnself::$_instance;

*@param$row行

*@param$col列

*@returnint

functionget_value($row,$col){

$php_bean=Php_bean::instance();

$php_bean-add_itratorCount();

if($col$row)return0;

if($row=0)return0;

if($col==$row)return1;

if($row==1)return1;

if($col==1)return1;

$pre=$php_bean-get_cache($row-1,$col-1);

$next=$php_bean-get_cache($row-1,$col-0);

if($pre===false){

$pre=get_value($row-1,$col-1);

$php_bean-set_cache($row-1,$col-1,$pre);

}else{

$php_bean-add_hit();

if($next===false){

$next=get_value($row-1,$col-0);

$php_bean-set_cache($row-1,$col-0,$next);

}else{

$php_bean-add_hit();

$value=$pre+$next;

return$value;

$v=get_value(6,6);

var_dump($v);

$php_bean_obj=Php_bean::instance();

echo"hit:".$php_bean_obj-get_hit()."br/

echo"itratorCount:".$php_bean_obj-get_itratorCount()."br/

运行结果:

int(1)hit:0

itratorCount:1

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论