PHP笔记-laravel中Request和Session相关使用

Posted IT1995

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP笔记-laravel中Request和Session相关使用相关的知识,希望对你有一定的参考价值。

目录结构如下:

关键的代码如下:

web.php,路由添加如下:

Route::prefix('student')->group(function()

	......
	......
	......

    Route::get('requestTest', 'StudentController@requestTest');

    Route::get('sessionTest1', 'StudentController@sessionTest1');
    Route::get('sessionTest2', 'StudentController@sessionTest2');
);

StudentController.php

<?php


namespace App\\Http\\Controllers;


use App\\Student;
use Illuminate\\Http\\Request;
use Illuminate\\Support\\Facades\\DB;
use Illuminate\\Support\\Facades\\Session;

class StudentController extends Controller

	......
    ......
    ......

    public function requestTest(Request $request)

        echo $request->input('name');
        echo $request->input('age', '未知');

        if($request->has('sex'))

            echo $request->input('sex');
        
        else

            echo '无该参数';
        

        $res = $request->all();
//        dd($res);

        if($request->isMethod('GET'))

            echo 'Yes';
        
        else

            echo 'No';
        

        $res = $request->ajax();
        var_dump($res);

        $res = $request->is('student/*');
        var_dump($res);

        return 'over';
    

    public function sessionTest1(Request $request)

        @session_start();

        //方法1
//        $request->session()->put('key1', 'value1');

        //方法2
//        session()->put('key2', 'value2');

        //方法3
        Session::put('key3', 'value3');
    

    public function sessionTest2(Request $request)

        @session_start();

        //方法1
//        echo $request->session()->get('key1');

        //方法2
//        echo session()->get('key2');

        //方法3
        echo Session::get('key3');
    

要注意的地方:

①laravel中的请求使用的是sysfony/http-foundation组建;

②请求里面存放了$_GET,$_POST,$_COOKIE,$_FILES,$_SERVER等数据;

③用于HTTP协议是无状态(Stateless)的,所以session提供一种保存用户数据的方法。

④laravel职称了多种session后端驱动,并提供API。内置了Memcached、Redis、数据库驱动,默认使用file。

⑤session的配置文件在config/session.php中。

以上是关于PHP笔记-laravel中Request和Session相关使用的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5.1 auth 刷新后注销

Mailgun、Mandrill 和 Ses 驱动程序、SMTP 和 phpmailer,在 Laravel 5.1 中使用哪一个?

laravel5.4笔记

Laravel 5:从 $request 中检索 JSON 数组

text 用laravel SES发送邮件

[李景山php]每天laravel-20161021|Request.php-2