thinkphp基本操作

来源:互联网 发布:阴氏埙授权淘宝店 编辑:程序博客网 时间:2024/05/22 18:23

1.index.php是每个应用的入口文件,它运行时会调用默认应用模块即home模块里的控制器。

可以通过在入口文件添加

define('BIND_MODULE','Admin');//增加应用模块
注意:此操作同时会绑定Admin为默认模块。修改配置文件默认模块也不会起作用,所以生成模块之后应把这句话删了。
来增加应用模块Admin等.也就是说,如果本来没有此模块,系统会自动在应用文件夹下生成并绑定为默认调用模块,如果有此模块,则会绑定为默认调用模块。

还可以在入口文件里添加代码增加控制器等。

2.thinkphp是通过url设置的参数来访问各个控制器文件中的函数的。

3.手动导入各种类库用import:

// 导入Org类库包 Library/Org/Util/Date.class.php类库import("Org.Util.Date");// 导入Home模块下面的 Application/Home/Util/UserUtil.class.php类库import("Home.Util.UserUtil");// 导入当前模块下面的类库 import("@.Util.Array");// 导入Vendor类库包 Library/Vendor/Zend/Server.class.phpimport('Vendor.Zend.Server');

对于import方法,系统会自动识别导入类库文件的位置,ThinkPHP可以自动识别的类库包包括Think、Org、Com、Behavior和Vendor包,以及Library目录下面的子目录,如果你在Library目录下面创建了一个Test子目录,并且创建了一个UserTest.class.php类库,那么可以这样导入:

import('Test.UserTest');
其他就必须加上前面的根目录比如Home/

4.当然现在thinkphp完全摒弃了import引入类库的做法,而是使用命名空间来自动加载:

根命名空间是一个关键的概念,以上面的Org\Util\File类为例,Org就是一个根命名空间,其对应的初始命名空间目录就是系统的类库目录(ThinkPHP/Library),Library目录下面的子目录会自动识别为根命名空间,这些命名空间无需注册即可使用。

例如,我们在Library目录下面新增一个My根命名空间目录,然后定义一个Test类如下:

  1. namespace My;
  2. class Test {
  3. public function sayHello(){
  4. echo 'hello';
  5. }
  6. }

Test类保存在 ThinkPHP/Library/My/Test.class.php,我们就可以直接实例化和调用:

  1. $Test = new \My\Test();
  2. $Test->sayHello();
而无需导入。

Library目录下面的子目录会自动识别为根命名空间,这些命名空间无需注册即可使用

模块中的类库命名空间的根都是以模块名命名,例如:

也就是说有了命名空间,就可以直接实例化了。

5.use的用处是简化类的写法比如:

use Think\Controller;class IndexController extends Controller {    public function index(){} 
首先是
use Think\Controller;
这样在继承类的时候直接写controller ,否则需要写成\THink\Controller;


0 0
原创粉丝点击