zoukankan      html  css  js  c++  java
  • 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 thinkController; 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 模块名/模型名
  • 相关阅读:
    浏览器 页面报错
    TP单字母函数
    TP系统常量、项目后台的搭建、模板中常量字符串替换
    ThinkPHP3.2的简单知识
    面向对象基本概念,关键字,类的组成,静态,三大特性,创建类和对象,设计模式
    layui(弹出层)
    头像文件上传 方法一:from表单 方法二:ajax
    上传文件
    流程增加,发起事件,流程显示,处理。
    分页,条件查找后再分页
  • 原文地址:https://www.cnblogs.com/shineguang/p/11140920.html
Copyright © 2011-2022 走看看