HDWiki/高级应用
control中调用model[ ]
原则是这样的,如果你的这个model在本control中大部分方法中都要用到,那么,就写在构造函数里面。 例如,名字为doc的control的构造函数如下:
function control(& $get,& $post){ $this->base( & $get,& $post); $this->load("doc"); $this->load("category"); }
注意两个model,一个是doc,一个是category,都是本control每个方法差不多都要用到的,所以写道构造函数里面。如果不是这种情况,那么需要的时候再去load。例如:下面是浏览词条的时候,需要调用model名字为adv的。就是在使用前load的,并没有放到control的构造函数里面
function doview() { ...... $this->load('adv'); ...... }
model中调用model[ ]
例如在名为adv的model中,有如下方法:
function view_filter($position){ ...... $this->base->load('category'); ...... }
这里 $this->base->load('category');是关键的代码,因为每个model都有个属性base,这个就可以去load你想要的model了,使用起来也很简单。
使用HDwiki缓存[ ]
base类有个cache的属性,看如下代码:
function dodefault() { $indexcache=$this->cache->getcache('indexcache',$this->setting['index_cache_time']); if(!(bool)$indexcache){ $indexcache=... $this->cache->writecache('indexcache',$indexcache); } }
要使用缓存,首先要给缓存取一个唯一的名字,这里例子中的缓存的名字就是“indexcache”,还要给你的缓存定一个过期时间,在getcache方法的第2个参数里面,如果为0,表示用不过期,除非你删除。注意,缓存的时间单位为秒。
参考来源[ ]
HDWIKI使用手册导航 | ||||||
---|---|---|---|---|---|---|
|