微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ThinkPHP框架

1.TP框架基础

          1.1目录结构

1.project  应用部署目录
 2.├─application           应用目录(可设置)
 3.│  ├─common             公共模块目录(可更改)
 4.│  ├─index              模块目录(可更改)
 5.│  │  ├─config.PHP      模块配置文件
 6.│  │  ├─common.PHP      模块函数文件
 7.│  │  ├─controller      控制器目录
 8.│  │  ├─model           模型目录
 9.│  │  ├─view            视图目录
10.│  │  └─ ...            更多类库目录
11.│  ├─command.PHP        命令行工具配置文件
12.│  ├─common.PHP         应用公共(函数文件
13.│  ├─config.PHP         应用(公共)配置文件
14.│  ├─database.PHP       数据库配置文件
15.│  ├─tags.PHP           应用行为扩展定义文件
16.│  └─route.PHP          路由配置文件
17.├─extend                扩展类库目录(可定义)
18.├─public                WEB 部署目录(对外访问目录)
19.│  ├─static             静态资源存放目录(css,js,image)
20.│  ├─index.PHP          应用入口文件
21.│  ├─router.PHP         快速测试文件
22.│  └─.htaccess          用于 apache 的重写
23.├─runtime               应用的运行时目录(可写,可设置)
24.├─vendor                第三方类库目录(Composer)
25.├─thinkPHP              框架系统目录
26.│  ├─lang               语言包目录
27.│  ├─library            框架核心类库目录
28.│  │  ├─think           Think 类库包目录
29.│  │  └─traits          系统 Traits 目录
30.│  ├─tpl                系统模板目录
31.│  ├─.htaccess          用于 apache 的重写
32.│  ├─.travis.yml        CI 定义文件
33.│  ├─base.PHP           基础定义文件
34.│  ├─composer.json      composer 定义文件
35.│  ├─console.PHP        控制台入口文件
36.│  ├─convention.PHP     惯例配置文件
37.│  ├─helper.PHP         助手函数文件(可选)
38.│  ├─LICENSE.txt        授权说明文件
39.│  ├─PHPunit.xml        单元测试配置文件
40.│  ├─README.md          README 文件
41.│  └─start.PHP          框架引导文件
42.├─build.PHP             自动生成定义文件(参考)
43.├─composer.json         composer 定义文件
44.├─LICENSE.txt           授权说明文件
45.├─README.md             README 文件
46.├─think                 命令行入口文件

           1.2配置文件

         1.框架主配置文件(惯例配置文件) thinkPHP/convention.PHP

         2.  应用公共配置文件 application/config.PHP, application/database.PHP 对整个应用生效

         3.模块配置文件 application/模块目录/config.PHP 对当前模块生效

         1.3函数文件

         1.框架助手函数文件 thinkPHP/helper.PHP

         2.应用公共函数文件 application/common.PHP

         3.模块函数文件 application/模块目录/common.PHP

         一般不建议直接修改thinkPHP/helper.PHP

2.请求的生命周期

3.TP框架中的控制器

            3.1控制器的后缀

          打开配置文件application/config.PHP,有如下配置

'controller_suffix' => false,

             表示认情况下,控制器无特殊后缀。例如 Index控制器,文件名为Index.PHP

          如果需要进行设置,可以设置为(我们不需要这么设置)

'controller_suffix' => 'Controller',

             表示控制器以Controller为后缀。例如Index控制器,文件名为IndexController.PHP  

             3.2控制器的定义

              1.表示控制器以Controller为后缀。例如Index控制器,文件名为IndexController.PHP

            定义位置:application/模块目录/controller/目录下

            命名规则:控制器名称(首字母大写) + (控制器后缀,认没有) + .PHP

            认:Index控制器 Index.PHP

            2.编写控制器

            声明命名空间 namespace app\模块目录名\controller

            引入控制器基类(可选) use think\Controller; think是命名空间 Controller是基类控制器

            定义当前控制器类,继承控制器基类(可选)

            3.3框架的命名空间

            命名空间本身是PHP就有的,用来防止命名冲突问题的。

            TP框架中的命名空间,通常和目录挂钩。

            原因:TP中的自动加载机制,会将类的命名空间作为加载路径的一部分。

            1.   声明命名空间 使用namespace关键字

             2.引入指定的类 使用use关键字 命名空间\类名称

             3.完全限定式访问 在使用类时,\完整命名空间\类名称(继承和实例化)

             如果一个类没有命名空间,使用 \类名

4.命令行创建模块目录及文件

              4.1命名行创建模块目录

              通常可以通过以下命令,自动生成模块目录

PHP think build --module 模块名

                   4.2命令行创建控制器

PHP think make:controller 模块名/控制器名 
PHP think make:controller 模块名/控制器名 --plain

                    4.3命令行创建模型

PHP think make:model 模块名/模型名

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐