一、命名空间(主要是为了实现自动加载类)
*命名空间(相当于虚拟的目录),为了让类有一个统一的文件夹来管理(可以自动加载‘类‘),每个文件都要有命名空间
*tp如何做命名空间:
*TP框架下有一个初始命名空间(相当于根目录)ThinkPHP\Libray
*在初始命名空间下又包含很多根命名空间,这些根命名空间主要分两类:
1.TP核心类里面的根(系统文件)
在Libray下,有几个文件夹就有几个根(所有的文件夹都是根)
2.APP里面的根(自定义文件)
APP里面的根是以模块名命名的
Libray下的文件夹和APP里面的模块文件夹都虚拟在一个根文件夹里面,这个文件夹就相当于 "\"(根)
二、获取系统常量信息
三、跨控制器调用(在一个(MainController.class.php)控制器里面调用另外一个(LoginController,class.php)控制器里面的方法)
1.造两个控制器
Main控制器
Login控制器
3种调用方法
三种方法显示同一结果:
2.U方法:生成方法的完整路径
echo U("模块/控制器/方法(login)");
3.如果跨模块调用:$m = A("模块文件夹名(如:Home)/Login"); $m->方法名();
四、连接数据库配置及Model数据模型层
1.如果连接数据库,先修改一下数据库配置:打开ThinkPHP文件下的Conf下的convention.php文件,在这个配置文件里把需要修改的数据库配置的数据拷贝到自己要用的配置文件中,
在信息中字段缓存改为false
2.制作Model模型:model本身也是一个类文件,数据库中的每个表都对应一个model模型文件(如没有特殊需求,文件可建可不建)
新建一个对应Nation表的Model类文件:
打开Model文件,可以从Library\Think\Model.class.php文件里拷贝需要的一些表的个性化设置:
把从Model父类文件中拷贝的表的个性化设置放到建的表的Model文件里面就可以了:
实例化Model对象