为了账号安全,请及时绑定邮箱和手机立即绑定

快速入门ThinkPHP 5.0--基础篇

难度中级
时长 5小时20分
学习人数
综合评分9.63
150人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 把view控制器的各方法的模版的公共部分提取出来放在view的common文件夹下,然后在模板原位置通过{include file=“”}进行引用

    查看全部
  • 条件判断标签:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>index</title>
        <link rel="stylesheet" type="text/css" href="__CSS__/style.css">
    </head>
    <body>
    {switch name="Think.get.level"}
    {case value="1"}<p>1</p>{/case}
    {case value="2"}<p>2</p>{/case}
    {case value="3"}<p>3</p>{/case}
    {case value="4|5"}<p>4</p>{/case}
    {default /}<p>0</p>
    {/switch}
    
    {range name="Think.get.level" value="1,2,3" type="in"}<!--in or notin or between(此时value只允许两个值)-->
    <p>当前level是value中的一个</p>
    {else}
    <p>当前level不是value中的一个</p>
    {/range}
    <!--下面的表达方法与上面的一致-->
    <!--{in name="Think.get.level" value="1,2,3"}
    {else}
    {/in}-->
    
    {define name="APP_PATH"}<!--判断常量是否被定义-->
    {else}
    {/define}
    
    {if condition="() AND/OR ()" }
    
    {else}
    
    {/if}
    </body>
    </html>


    查看全部
    0 采集 收起 来源:条件判断标签

    2018-05-06

  • thinkphp模板中的比较标签:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>index</title>
        <link rel="stylesheet" type="text/css" href="__CSS__/style.css">
    </head>
    <body>
        <!--{eq}标签(与{equal}标签相同)-->
     {eq name="$b" value="$b"}<!--$a与$b均可为具体数值-->
     <p>相等</p>
        {else}
            <p>不相等</p>
        {/eq}
    <!--{neq}标签(与{notequal}标签相同),与{eq}效果相反,如不同则输出前面的值,相同则输出后面的-->
    <!--{gt}标签,判断是否大于,用法与前面相同-->
    <!--{egt}标签,判断是否大于或等于-->
    <!--{elt}标签,判断是否小于或等于-->
    <!--{lt}标签,判断是否小于,用法与前面相同-->
    
    </body>
    </html>


    查看全部
    0 采集 收起 来源:比较标签

    2018-05-06

  • <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>index</title>
        <link rel="stylesheet" type="text/css" href="__CSS__/style.css">
    </head>
    <body>
            <!--violist标签-->
     {volist name="list" id="data" offset="0" length="3" mod="2" key="s"}<!--//mod当前循环次数与mod值取余并赋值给$mod,key:循环次数变量,默认值为i,offset:从*下标开始,length:循环长度-->
     <h1>{$mod}:{$s}:{$data.name}</h1>
        {/volist}
            <!--foreach标签-->
            <!--与下面这种表达方式相同 {foreach name='list' item="vo"}-->
     {foreach $list as $vo}
            <h3>{$vo.name} : {$vo.email}</h3>
        {/foreach}
            <!--for循环-->
     {for start="1" end="10" step="2" name="i"}
            <p>{$i}</p>
        {/for}
    </body>
    </html>


    查看全部
    0 采集 收起 来源:模板循环标签

    2018-05-06

  • 在view模版中使用html注释(<!---->)用户能够查看到,而使用php注释({/*  */})则看不到!

    查看全部
  • {literal}这中间的内容不会被编译{/literal}

    查看全部
  • php函数在view中的使用方式:(###占位符)


    查看全部
  • 几种赋值方式代码:

    查看全部
  • 系统默认提供了这五个模版变量,可自行设置更改 在配置文件中  返回数组 'view_replace_str' => [ ]

    系统定义的也可自行重新定义

    查看全部
  • 四种向页面赋值方式

     1.use think\Controller

     this->fetch('index',[key=>value]) 

    2.assign(key,value)

     3.this->view->name(key,value)

     4.use think\View 

    View::share(key,value) 同时可用

    查看全部
  • fetch(),

    第一个参数:view视图文件;

    第二个参数:给变量赋值(数组);

    第三个参数:替换原有文本;

    查看全部
  • 还可以通过调用Controller控制器的fetch方法 调用指定的view文件调用前需要加载use think\Controller 命名空间,并在指定的应用控制器中extends Controller类$this-> fetch()各参数同view()助手函数相同,区别是fetch()方法也可使用$this -> assign()方法传递变量的视图层(此方法需继承Controller类才可调用)即tp3.x版本相同,view()方法不能调用此方法与tp3.x版本不同的是,$this->display()是直接在控制器中输出要显示的字符串,原3.x版本表示的是调用视图层,也可使用$this -> assign()方法,webserver项目中不建议使用$this->display()方法,这会导致视图层不可用
    
    <?php
    namespace app\index\controller;
    use think\Controller;
    class Index extends Controller{
        public function index(){
            $this->assign('user','imooc');//
            return $this->display('{$user},{$email}',[
                'email'=>'12345679@qq.com']);
        }
    }


    查看全部
    0 采集 收起 来源:视图view

    2018-05-06

  • <?php
    namespace app\index\controller;
    use think\Controller;
    class Index extends Controller{
        public function index(){
            return $this->fetch('index',[
                'email' => 'abcd@qq.com'
                ]//与view()类似
                );
        }
    }


    查看全部
    0 采集 收起 来源:视图view

    2018-05-06

  • <?php
    namespace app\index\controller;
    class Index{
        public function index(){
            //return view();  #默认找app/index/view/index/index.html
            //return view('upload');  #默认找app/index/view/index/upload.html
           // return view('**/upload');  #默认找app/index/view/index/**(上级文件目录)/upload.html
           //return view('./upload.html');  #默认找入口文件同级目录下的upload.html注意必须加.html后缀!
           return view('index',[
               'email' => 'abc@qq.com',//如在对应html文件中添加<h1>{$email}</h1>(即数组的key,注意表示方式)则会输出abc@qq.com
               'adress' => 'hahaha'
           ],[
               'STATIC' => '当前是STATIC的替换内容'//如在对应html文件中添加<h1>STATIC</h1>(即数组的key,注意表示方式)则会输出''中的文字
               ]
           );
        }
    }


    查看全部
    1 采集 收起 来源:视图view

    2018-05-06

  • 可以在conf文件中创建对应模块的配置文件进行配置,也可以在方法内传递参数配置。但是实际开发中会在入口文件或者构造方法来统一的修改访问类型

    <?php
    return [
    'default_return_type' =>'xml'
    ];

    特殊封装,不需要在每个方法里都传递这样的参数,可以通过入口/构造方法来统一修改返回类型


    响应对象Response

      1.针对某一个模块返回其他格式类型,那么需要给在conf文件中创建对应模块的配置文件config.php中配置default_return_type

      2.针对某一个操作返回特殊的类型,那么可以通过动态配置实现

    在TP5中不允许在控制器和方法里die(),因为响应有可能发生问题

    一般在控制器里面直接return 数据,默认格式为html,默认会调用response对象出输出数据,如果需要对数据格式进行修改,第一种在config.php中修改,这个设置全局的,如果想对某个控制器的数据进行修改,一般在控制器里面动态设置返回格式


    <?php
    namespace app\api\controller;
    use think\Config;
    class Index
    {
    public function getUserInfo($type='json')
    {
    if(!in_array($type,['json','jsonp','xml']))
    {
    $type = 'json';
    }
    Config::set('default_return_type',$type);//动态配置,这样就不用修改配置文件,可以通过同一个方法返回不同的响应对象
    $data = [
    'code'=>200,
    'result'=>[
    'username'=>'rui',
    'email'=>'123@qq.com',
    'gender'=>'female'
    ]
    ];
    return $data;
    //html返回的是字符串,当前返回的是数组,无法解析
    }
    }



    <?php
    namespace app\index\controller;
    use think\Request;
    use think\Config;
    class Index
    {
    public function index(Request $request)
    {
    $res = [
    'code'=> 200,
    'result'=>[
    'list' =>[1,2,3,4,5,6]
    ]
    ];
    Config::set('default_return_type','xml');
    return $res;
    //dump($res);
    }
    }


    查看全部
    0 采集 收起 来源:响应对象

    2018-05-05

举报

0/150
提交
取消
课程须知
1、有一定的php基础。 2、对git composer 有一定的了解。 3、本机安装好相应的开发环境 4、最好有一定的mvc 框架的使用经验
老师告诉你能学到什么?
1、框架的搭建 2、目录文件的介绍 3、环境的配置 (开发 测试 线上环境) 4、请求对象和数据请求参数获取 5、相应对象和返回相应类型的数据 6、模板的使用 比较 判断 循环

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!