TinkPHP 3.2.3版本 新手该注意的地方

ThinkPHP 3.2.3版本
一、命名空间(注意:命名空间定义必须写在所有的PHP代码之前声明,而且之前不能有任何输出,否则会出错)
        namespace Home\Controller;
            这是系统的规范要求,表示当前类是Home模块下的控制器类,命名空间和实际的控制器文件所在的路径是一致的,
            也就是说: Home\Controller\IndexController类
            对应的控制器文件位于应用目录下面的 Home/Controller/IndexController.class.php,
            如果你改变了当前的模块名,那么这个控制器类的命名空间也需要随之修改。
        use Think\Controller;
            表示引入 Think\Controller 类库便于直接使用。

二、好习惯
        遵循框架的命名规范和目录规范;
        开发过程中尽量开启调试模式,及早发现问题;
        多看看日志文件,查找隐患问题;
        养成使用I函数获取输入变量的好习惯;
        更新或者环境改变后遇到问题首要问题是清空Runtime目录;

三、命名规则
        函数的命名使用小写字母和下划线的方式
        方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,
        属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”
        以双下划线“__”打头的函数或方法作为魔法方法
        常量以大写字母和下划线命名
        配置参数以大写字母和下划线命名
        语言变量以大写字母和下划线命名
四、URL访问模式(可以使用路由设置你喜欢的路径)
        http://serverName/index.php
        (或者其他应用入口文件)/模块/控制器/操作/[参数名/参数值...]

        新版采用模块化的设计架构,下面是一个应用目录下面的模块目录结构,每个模块可以方便的卸载和部署,并且支持公共模块。
        Application      默认应用目录(可以设置)
        ├─Common         公共模块(不能直接访问)
        ├─Home           前台模块
        ├─Admin          后台模块
        ├─...            其他更多模块
        ├─Runtime        默认运行时目录(可以设置)

        每个模块是相对独立的,其目录结构如下:
        ├─Module         模块目录
        │  ├─Conf        配置文件目录
        │  ├─Common      公共函数目录
        │  ├─Controller  控制器目录
        │  ├─Model       模型目录
        │  ├─Logic       逻辑目录(可选)
        │  ├─Service     Service目录(可选)
        │  ... 更多分层目录可选
        │  └─View        视图目录



五、CURD是什么意思
        增:  Create  对应的方法是add()
        改:  Update  对应的方法是save()
        查:  Read    对应的方法是select()
        删:  Delete  对应的方法是delete()



六、在模板中输出变量
        例:
        在控制器中写
        $name = 'ThinkPHP';
        $this->assign('name',$name);
        $this->display();
        模板中写
        Hello,{$name}
        输出
        Hello,ThinkPHP



七、可以方便的实现模板布局以及布局嵌套功能。
        有三种布局模板的支持方式
        1、第一种方式:全局配置方式
                这种方式仅需在项目配置文件中添加相关的布局模板配置,就可以简单实现模板布局功能,
                比较适用于全站使用相同布局的情况,需要配置开启LAYOUT_ON 参数(默认不开启),
                并且设置布局入口文件名LAYOUT_NAME(默认为layout)。
                例1:
                配置文件写:
                  'LAYOUT_ON'=>true,
                  'LAYOUT_NAME'=>'layout',
                layout.html写
                   <include file="Public:header" />
                   {__CONTENT__}
                   <include file="Public:footer" />
        2、第二种方式:使用layout控制模板布局
                使用内置的layout方法可以更灵活的在程序中控制模板输出的布局功能,
                尤其适用于局部需要布局或者关闭布局的情况,这种方式也不需要在配置文件中开启LAYOUT_ON。
                例1:
                表示当前的模板输出启用了布局模板,并且采用默认的layout布局模板
                namespace Home\Controller;
                use Think\Controller;
                Class UserController extends Controller{
                     Public function add() {
                         layout(true);
                         $this->display('add');
                     }
                }
                例2:
                或者使用layout方法动态关闭当前模板的布局功能(这种用法可以配合第一种布局方式,例如全局配置已经开启了布局,可以在某个页面单独关闭)
                namespace Home\Controller;
                use Think\Controller;
                Class UserController extends Controller{
                     Public function add() {
                         layout(false); // 临时关闭当前模板的布局功能
                         $this->display('add');
                     }
                }




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章