本章 Session 是重点,有几点容易叫人疑惑,分享一下!

本章中上来直接在store()方法中使用session()->flash('success','如何如何,注册成功了'),这点初看就晕了。尤其是看过文档的,疑问来了:此处的session()到底是什么?
咋一看,此处不是全局辅助函数session()吗?是不是?
教程上说,此处的session(),是方法!方法是什么意思,类中的函数叫方法,大致可以这么理解。
关键是Session的读写有两种方式:
一是通过请求实例的session方法:例如$request->session()->get('key');
二是通过全局辅助函数,例如session('key');
而此处直接书写的session()像极了全局辅助函数,如果是,session()->flash()是不可以理解的。
那么到底是什么?
我认为:
在此UserController类中,一开始就引入了Request请求类,那么此处的session()必然是Request请求类的方法。虽然在store()方法参数定义中传入了一个实例$request,在方法体中使用$request->session()更便于理解。但直接使用session(),也可以理解,在类的a方法中调用引入类的b方法,因为引入了,所以直接写方法名调用。

not only a learner , but also a user .
ruodee
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2

比如,,,(注意,此段代码,没有运行过,不知道对不对,应该是对的,,,,)

class Test
{
    public function test()
    {
        return 'test';
    }
}

function func()
{
    return new Test();
}

echo func()->test(); // 输出'test'

所以session()->flash()有什么不能理解呢?

5年前 评论

比如,,,(注意,此段代码,没有运行过,不知道对不对,应该是对的,,,,)

class Test
{
    public function test()
    {
        return 'test';
    }
}

function func()
{
    return new Test();
}

echo func()->test(); // 输出'test'

所以session()->flash()有什么不能理解呢?

5年前 评论
ruodee

是这个意思

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!