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

快速入门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下载
官方微信
友情提示:

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