在学习完基础之后,最好的提高方式是做一个自己的框架,因为框架会用到各个知识点,在制做过程中,复习,巩固,提高。
在框架中,因为是单入口,整个脚本运行时都存在的变量我们应该设为静态变量,这样它在每个地方都可以调用。
1、框架第一步最重要的就是需要框架给项目创建相关的目录,在创建目录时:
脚本文件路径在框架中很重要,在获取当前脚本路径时,$_SERVER['SCRIPT_FILENAME']和__FILE__都可以获取,而区别在于文件被include或require时__FILE__仍然返回原脚本路径,前者则会返回包含它的文件路径。
2、处理框架文件的自动载入 文件在载入时应用一个静态变量来判断它是否已经被载入过,防止重复载入
3、处理框架整体的配置文件和项目配置文件
4、控制器动作模块的调用 对url处理,并实例化控制器类 执行方法 对象在实例化时应用一个静态变量来判断它是否已经被实例化过,防止重复实例化(简单的单例模式)
5、自定义错误处理 和异常处理 在W3Cschool中有明确的解释
6、生成运行时的编译文件runtimefile这个文件,
第一次运行时成为编译文件,并创建目录,并生成欢迎页,第二次再运行时判断,如果有这个文件只需要引入这个文件,就不再去再运行创建目录等操作
7、错误和异常日志处理
8、目录处理
9、路由处理
10、集成各种类:图片处理、文件上传、数据库处理、分页处理等,这样就是一个小型的框架了。
一个框架的大体结构是这样的:
Frame//框架主文件夹
-Frame.php//主处理程序
common//框架公共函数文件夹 函数和类库在项目开始时都会被加载进来,项目中可以使用
libs//框架处理类
runtime//运行时文件夹各种缓存等
tpl//框架模板
config//框架配置文件夹
index.php