KingCMS接触之:源代码剖析

先从核心开始./system/core.class.php.里面是KingCMS_class的定义你只要看到别的页中有:
global $king或$king哪么它就是该类的实例了.看看它提供的属性和方法
      ------公共属性------
      lang,cache,skin,db,admin=array(),holdmodule=array(...),devname=2010,version=6
      私有属性说也没用你在实例中也调不到.看公共方法吧
        pageEngine     //页面执行引擎
        Load           //加载模块
        isModule       //判断模块是否已经被安装
        getModule      //返回模块列表
        config         //网站参数
        access         //管理员访问权限验证
        acc            //管理员操作权限验证
        progress       //进度条
        log            //添加日志
        formdecode     //解析表单项目
        getUrl         //对URL进行数组处理
        getFpath       //判断文件与否,并输出格式化路径
        getFext        //根据文件类型返回文件扩展名
        getConfig      //返回系统参数
        getModuleVer   //返回模块版本
        openList       //列表 - 开始
        tdList         //功能参数同上,此为数据列表
        closeList      //列表 - 结束
         openForm      //开始显示表单
        splitForm      //拆分表单显示
        htmForm        //返回htm标签
        closeForm      //结束类

 

/system/lib/下除了func.php是工具函数的集合.simple_html_dom.php是对DOM操作的工具函数和方法.其它几个都是对CMS操作的OO化.有
kc_template_class.php   //KingCMS模版标签的解析
kc_skin_class.php           //对后台操作的皮肤化吧.我觉得叫操作的组合化比较好
kc_xml_class.php           //所有的记录都是以XML缓存化的.这个就是干这使的
kc_verify_class.php       //表单的验证类

 

上面的只是从源码中扣出来的让我们来看看实际有用的示例:
$king->cache->put($cachepath,$array);
在公共变量中cache指向的是/system/lib/kc_cache_class.php的实例.该文件是KC_Cache_class的定义.put方法当然在该类中了.

$king->lang->get('system/common/error')
在公共变量中lang指向的是/system/lib/kc_language_class.php的实例.该文件是KC_Language_class的定义.get方法是去找/system/language/语言.xml
在我的包中是zh-cn.该里面定义是系统的文字/消息.作过I18N国际化的都知道了.get的参数是一个节点表达式.是找system下的子节点名为common下的子节点名为error的文字/消息
$king->db->getRows("select listid from %s_list;")
在公共变量中db指向的是/system/lib/kc_mysql_class.php或者kc_sqlite_class.php这个要依安装时你的选择.里面都是对数据操作的封装.

你可能感兴趣的:(cms,xml,sqlite,cache,Class,工具)