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

快速入门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下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

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