tp框架获取常量信息、方法、命名空间
获取系统常量信息:
public function ShowInFo() { var_dump(get_defined_constants(true)); //如果参数为true,则分类显示 }
在这里我们先说一下几个调用方法:
A方法(可跨模块调用):实例化控制器对象
A("模块/控制器");
R方法(可跨模块调用):
R("模块/控制器/方法");
U方法
可以在任何一个地方生成任何一个模块下任何控制器里边的任何一个方法的路径。
开始演示:
创建一个MainController.class.php文件。内容为:
<?php namespace Admin\Controller; //新建模块需要改模块名 use Think\Controller; class MainController extends Controller { public function showList() { echo "大苹果商城"; } }
然后在DengLuController.class.php文件中调用:
<?php namespace Admin\Controller; //新建模块需要改模块名 use Think\Controller; class DengLuController extends Controller //继承父类Controller { public function aa() { //var_dump(get_defined_constants(true)); 获取常量信息 //1.造对象调用 //$m = new MainController(); //$m->showList(); //2.快捷函数A //$m = A("Main"); //$m->showList(); //3.快捷函数R //R("Home/Index/test"); //4.快捷函数U //echo U("Home/Main/test"); } public function _empty() //加一个_empty方法 { echo "您输入的地址不对!"; } }
OK,既然有了方法,那我们就要尝试连接一下数据库。
首先我们需要改一下连接数据库的配置:
从ThinkPhP文件夹内的配置文件Config.php复制数据库设置的配置,粘贴到
自己所需要的模块下面的配置文件内,然后再修改配置。字段缓存改为flase。
然后,就要连接数据库了。这里呢,又来了几个方法:
1.new的方式(新建子类对象)2.D方法(造父类对象)3.M方法(造父类对象,不管有没有子文件存在)
代码如下:
制作Model模型: public function shuJu() { //1.new的方式(新建子类对象) //$n = new \Admin\Model\RulesModel(); //var_dump($n); //2.D方法(造父类对象) $n = D("Rules"); var_dump($n); //3.M方法(造父类对象,不管有没有子文件存在) //$n = M("Rules"); //var_dump($n); }