__autoload(); 由PHP自动加载机制调用的
spl_autoload_register(); 由PHP为我们提供的可以向自动加载机制中添加多个类似于__autoload()的函数。
调试要在单入口进行测试:
其他文件夹的自动加载:一般只加载有类文件的文件夹
注册指定函数作为自动加载函数:
说明
所有loadCore、loadController、loadModel等,都被autoLoad调用,
autoLoad又在run方法中被调用
所有的类的实例化及类的方法的运动是在index.php中
5、分析URL
所有的请求的本质者是一个URL,都请求提Application,如果想让Application能够准确知道用户的请求,要由哪一个类文件的哪一个方法处理,那么网站占所有的URL的设置要有一定的规则,类文件名也要有一定的规则:
l URL的规则:
http://localhost/index.php?module=类名&action=类中的方法名
l 类的命名规则:
如果是控制器类:
类名Controller 文件名: 类名Controller.class.php
如果是模型类:
类名Model 文件名: 类名Model.class.php
6、分发请求
(本质是动态实例化控制器,调用控制器的方法)
7、开起session
注意:所有的方法都要在单一出口访问
总结:
l 所有的php文件的运行都在index.php文件中。
l application只处理控制器(controller)文件
l controller控制器文件处理model模型文件
l application之所以能够将根据用户的请求,准确的调用类中的方法,完全依赖于我们定义的url的规则与类的命名规则。
应用命名空间:
命名空间的命名的规则,是以文件所在的目录名为命名空间名。
如果涉及到空间,那么一定要考虑到类名前会有空间名。
8、效果显示
当访问网址的时候会进行默认的路由转发:
进行其它控制器的方法访问,通过url
补充:pathinfo模式可以通过$_SERVER['PATH_INFO'];
大致就是这样,其它一些等以后我有空再补充,我还有很多需要学习的。
座右铭:人生就是不断地在学习,再学习。