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

快速入门ThinkPHP 5.0--基础篇

难度中级
时长 5小时20分
学习人数
综合评分9.63
150人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 在模板中使用花括号{$email}最后在编译之后显示的是<?php echo $email; ?>
    这个花括号是框架里面定义的,在配置里面就有;是smarty模板引擎的五配置两方法的一部分;
    花括号和变量之间不能有空格;当引用其他插件,如果和花括号有冲突,可以更改配置;
    编译文件(运行后的文件)在runtime目录下的temp目录下

    查看全部
  • 以后的学习,偏向于继承think目录下的controller类来进行操作

    查看全部
  • 参考笔记https://www.imooc.com/notepad/200b90

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

    2018-06-09

  • 开发有前台的建议用fetch,可以使MVC分离:创建view层级,新建模板文件,直接将fetch的第一个参数指向这个模板文件

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

    2018-06-09

  • 还可以通过调用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()方法,这会导致视图层不可用


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

    2018-06-09

  • 我们知道http请求是每一个请求对应一个响应,我们服务器会对我们的请求做出相应的响应

    我们可以在请求中获取所有的请求信息


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

    2018-06-09

  • thinkphp5 中不允许在控制器或控制器方法中进行die()操作,可能会影响response对象的返回

    如果要在页面上打印一个数据或一个字符串 除 使用dump()函数外,还可以直接return要输出的值

    输出默认是一个html格式

    在方法中可以通过设置 Config::set("default_return_type","Json");来修改输出在页面的值

    在方法中可以调用 Config::set("default_return_type","Json");等,返回的数组会返回对应的格式。 可以在conf文件中创建对应模块的配置文件进行配置,也可以在方法内传递参数配置。 但是实际开发中会在入口文件或者构造方法来统一的修改访问类型
    参考笔记:https://www.imooc.com/notepad/200af6

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

    2018-06-09

  • Request.php有更多可供参考

    helper.php中创建函数的方法的值得学习,先判断一下是否存在

    tp5用$rquest->param()获取传递过来的参数,如果参数有重复的情况会覆盖,覆盖的规则如下:pathinfo参数会覆盖post中的参数,post中的参数会覆盖get中的参数。

    1、input助手函数也是获取对象里面的参数. input('传递方式','参数','对参数过滤')

    注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个值进行默认值设置,第三个值用来过滤获取的值,例如可将值转换成intval

    2、同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作

    <?php
    namespace app\index\controller;
    use think\Request;
    class Index{
    public function index(Request $request){
    //dump($request->param());//param方法会返回post,get,pathinfo传递的所有值,即合并
    //http://localhost/imooc/public/index/index/index/type/5.html?id=10 
    //$res = input('get.id');//10
    //dump($request->get('id'));//10
    //$res = input('post.id','100');//没有则默认100,结果100
    //dump($request->post('id','100'));//100
    //$res = input('post.id','abc','intval');//没有则默认100,结果100
    //dump($request->post('id','100'));//100
    #获取类型
    //'get', 'post',
    //'put', 'patch',
    //'delete', 'param',
    //'request', 'session',
    //'cookie', 'server',
    //'env', 'path', 'file'
    //通过input助手函数对request中参数进行获取,#建议使用request对象(Request $request)#,避免重复定义相同函数
    //$res = input('patch.id');
    //session('emial','987@qq.com');
    //dump(input('session.emial'));
    //dump(input('session.emials','imooc@qq.com'));
    //不存在默认imooc
    session('ss','   123   ');
    $res = $request->session('ss','','trim');//trim过滤前后空格
    dump($res);
    }
    }


    查看全部
    1 采集 收起 来源:input助手函数

    2018-06-09

  • input助手函数  1.可以获取请求的参数和值,并对值进行过滤;注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个函数进行默认值设置,第三个函数用来过滤获取的值,可将值进行转换 例如转换成intval

     2.同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作


    查看全部
    0 采集 收起 来源:input助手函数

    2018-06-09

  • 下面对截图中的url进行分析:"course.io"是配置的域名,"/index/index/index/type/5.html"这一段是pathinfo模式,"?id=10"是get传参部分;

    (type是类型的意思)


    dump($request->get());返回的是?id=10这一部分;5.0以前的tp版本,通过get()可以获取到pathinfo和?id=5一起被获取到;tp5开始通过get()获取的,就不包含pathinfo那一部分了,看截图;


    dump($request->param());返回的是"type/5.html?id=10"这一部分;,"type/5.html"相当于在传参

    (type是类型的意思,param  是thinkphp自己写的类型,自动判断是什么类型的数据)

    查看全部
  • 返回的结果看截图,从上到下按顺序
    dump($request->domain());返回的是域名
    dump($request->pathinfo());返回的是pathinfo模式(带后缀)
    dump($request->pathinfo());返回的是真实的pathinfo模式(不带后缀,后缀本来就是假的)

    查看全部
    1. 普通模式。如:http://localhost/index.php?m=模块&a=方法

    2. pathinfo模式。如:http://localhost/index.php/模块/方法

    Thinkphp框架的PATHINFO模式详解

            对于Thinkphp的用户来说,PATHINFO模式是必须要掌握的,模式下默认以'/'隔开各部分,视觉效果非常好,并且可以通过

    'URL_PATHINFO_DEPR'更改为任意符号,非常的方便快捷,更改为"-"或者'_'非常利于seo

            PATHINFO模式是系统的默认URL模式,提供了最好的SEO支持,系统内部已经做了环境的兼容处理,所以能够支持大多数的主机环境。对应上面的URL模式,PATHINFO模式下面的URL访问地址是: http://localhost/index.php/home/user/login/var/value/

    PATHINFO地址的前三个参数分别表示模块/控制器/操作。

    不过,PATHINFO模式下面,依然可以采用普通URL模式的参数方式,例如: http://localhost/index.php/home/user/login?var=value 依然是有效的

    PATHINFO模式下面,URL是可定制的,例如,通过下面的配置:

    // 更改PATHINFO参数分隔符'URL_PATHINFO_DEPR'=>'-',

    我们还可以支持下面的URL访问: http://localhost/index.php/home-user-login-var-value


    通过设置'URL_HTML_SUFFIX'       =>  'html',可以加上.html后缀,实现伪静态的功能

     http://localhost/index.php/home-user-login-var-value.html

    总结:thinkphp的url的PATHINFO模式非常的好用,做个博客非常容易SEO,并且伪静态,后面的文章里,我们继续讲解静态化的设置


    查看全部
  • 在项目开发过程中,获取参数是十分重要的;tp框架为我们提供了input()助手函数来获取传递的各种参数;
    input()函数是tp框架中定义的,不是PHP内置函数;同时我们在使用tp框架开发项目的过程中,不应该再定义和input的同名的函数了,否则会和框架中的input()冲突;
    同时在入口文件中引用的其他文件中也不应该存在和input同名的自定义函数,否则也会和框架中的input()冲突;tp框架中的所有助手函数都是在thinkphp目录下的helper.php中定义的;

    查看全部
    0 采集 收起 来源:input助手函数

    2018-06-09

  • thinkphp5框架入口文件start.php在加载 核心文件app.php时,

    调用app::run(方法名称可能有误,具体以项目为准)运行应用实例,

    run()方法中调用了Request::instance()方法,App::run()方法返回Response对象,Response->send()调用send的方法将数据返回给请求客户端

    故在app应用目录中传递( Request $request)参数 通过$request->方法名()即可调用请求的URL和对应的参数

    其中需要注意的是,thinkphp5不同于之前的3.2版本,get()方法不再获取URL中的param部分,只获取URL后缀以?id=5此格式的参数

    $request->param()方法可获取除模块/控制器/方法名 之外的param部分,更多的$request请求获取可参照截图及Request.php文件

    dump() url()属于tp5提供的助手函数

    查看全部
  • get新知识:在浏览器中右击-->审查元素--->页面中有Application中有Cookies点击就可以看到Cookie这个数组的键名和值;因为cookie是客户端的缓存机制(缓存的数据通常经过加密);

    session是服务器端的缓存机制,session相对更安全

    查看全部

举报

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

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

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

公众号

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

友情提示:

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