PHPCMS的使用小结
发布时间:2023-11-20 20:19:47
下面我讲讲关于这套系统的加载流程
定义根目录,定义include目录
加载核心文件
配置文件'config.inc.php'
全局函数'global.func.php'
目录操作函数'dir.func.php'
url相关函数'url.func.php'
数据输出相关类'output.class.php'
权限类'priv_group.class.php'
时间处理类'times.class.php'
加载语言数组'phpcms.lang.php'
加载数库存类'db_mysql.class.php'
定义常量,大部分我们常用的信息如IP,HTTP_REFERER,SCRIPT_NAME...一律用常量
获得变量,从$_POST,$_GET,$_COOKIE,-> extract
读取CACHE,cache_read函数大部分都是读取的一些数组文件,然后extract (extract每个数组都别忘了unset)
获得当前$mod,默认是PHPCMS
判断用户是否登录
读取会员组权限
读取模板文件,通过template函数
首先会读取根据参数生成cache模板php文件
判断是否存在该文件并且该文件 TPL_ROOT.TPL_NAME.'/'.$module.'/'.$template.'.html'生成日期是否等于TPL_CACHEPATH.$module.'_'.$template.'.tpl.php',否则重新编译和生成tpl文件
读取tpl文件
这套CMS的优点在于程序与模板分离,将常用的数据通过以数组形式存取在文件上面,提升了很高的性能,不用每次都从数据库来读取,然后就是template,通过自带的语法函数编译后存取为tpl增加了模板的灵活性,美工不用懂得PHP语法,也能灵活的写布局;里面自带的TAG功能也不错。
缺点在于,一次性加载了太多的不需的文件在内存中,尤其是都是以变量和数组形式,不管是否用得着。
亮点在于,可以很方便生成HTML,弥补了缺点,总体来说架构和思路相当不错,值得学习和二次开发!


猜你喜欢
- 将ASCII字符转换为对应的数值即‘a'-->65,使用ord函数,ord('a')反之,使用chr函数,将数
- 前言Stream 是一个基于 Go 1.18+ 泛型的流式处理库, 它支持并行处理流中的数据. 并行流会将元素平均划分多个的分区, 并创建相
- 同步的方法基本与多线程相同。1) Lock当多个进程需要访问共享资源的时候,Lock可以用来避免访问的冲突。import multiproc
- QueueTornado的tornado.queue模块为基于协程的应用程序实现了一个异步生产者/消费者模式的队列。这与python标准库为
- logconfig.json{ "version":1, "disable_existing_loggers&
- V5.0之后,我们总结了一些得失。首先要说的是改版的动力。产品设计或产品升级的驱动力只有两个:用户需求和网站目标。之前的我们的多次改版,其驱
- 如下所示://动态删除select中的所有options: function delAllOptions(){&nb
- 大家都知道,Matplotlib 是众多 Python 可视化包的鼻祖,也是Python最常用的标准可视化库,其功能非常强大,同时也非常复杂
- 1.选择File -> Settings2.选择 File and Code Templates -> Files ->
- JSON.parse处理非标准Json数据出错标准json格式通常我们在编码中使用的object是类似于下面这种:let object =
- 这段时间一直想尝试着在SAE中使用Python,初步选择了Web.py框架做为开发框架,但是可怜SAE上的资料少的可怜,有点问题基本上解决不
- 你好由于你是游客无法查看本文请你登录再进谢谢合作。。。。。当你在爬某些网站的时候需要你登录才可以获取数据咋整?莫慌把这几招传授给你让你以后从
- 以下的文章主要介绍的是MySQL 查询缓存的实际应用代码以及查看MySQL 查询缓存的大小 ,碎片整理,清除缓存以及监视MySQL 查询缓存
- 本文实例讲述了php+mysqli实现批量替换数据库表前缀的方法。分享给大家供大家参考。具体分析如下:在php中有时我们要替换数据库中表前缀
- 本文实例讲述了python实现的AES双向对称加密解密与用法。分享给大家供大家参考,具体如下:高级加密标准(Advanced Encrypt
- 安装pyinstallpip install pyinstaller注意事项除非必要,否则尽量不要直接import module,用from
- 一、什么是跨域?跨域问题的出现是因为浏览器的同源策略问题。所谓同源就是必须有以下三个相同点:协议相同、主机相同、端口相同。如果其中有一项不同
- 相比SQL Server 2000提供的FOR XML查询,SQL Server 2005版本对现有功能增强的基础上增加了不少新功能,最为吸
- 本文实例讲述了朴素贝叶斯分类算法原理与Python实现与使用方法。分享给大家供大家参考,具体如下:朴素贝叶斯分类算法1、朴素贝叶斯分类算法原
- 最近看到很多关于MySql相关的语法,小白也想学习一些MySQL的存储过程的写法,因此就想安装MySQL,过程中遇到过一些问题,这里记录下来