laravel5.5http会话机制

Posted ArcheWong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel5.5http会话机制相关的知识,希望对你有一定的参考价值。

  • 配置文件 config/session.php

大多数是用file驱动,将session保存在storage/framework/sessions,可以考虑使用redis或者memcached 驱动实现更出色的性能

  • 使用database作为驱动

需要创建数据表

php artisan session:table

php artisan migrate

数据表内容

Schema::create('sessions', function ($table) {
    $table->string('id')->unique();
    $table->integer('user_id')->nullable();
    $table->string('ip_address', 45)->nullable();
    $table->text('user_agent')->nullable();
    $table->text('payload');
    $table->integer('last_activity');
});
  • 使用session

laravel 中处理 Session 数据有两种主要方法:

全局辅助函数 session 和通过一个 Request 实例。

    public function show(Request $request, $id)
    {
        $value = $request->session()->get('key');

        //
    }
Route::get('home', function () {
    // 获取 Session 中的一条数据...
    $value = session('key');

    // 指定一个默认值...
    $value = session('key', 'default');

    // 在 Session 中存储一条数据...
    session(['key' => 'value']);
});

通过 HTTP 请求实例操作 Session 与使用全局辅助函数 session 两者之间并没有实质上的区别

  • 获取所有 Session 数据

    $data = $request->session()->all();

  • 要确定 Session 中是否存在某个值,可以使用 has 方法。如果该值存在且不为 null,那么 has 方法会返回 true:

    if ($request->session()->has('users')) {
    //
    }
  • 要确定 Session 中是否存在某个值,即使其值为 null,也可以使用 exists 方法。如果值存在,则 exists 方法返回 true:

    if ($request->session()->exists('users')) {
    //
    }

以上是关于laravel5.5http会话机制的主要内容,如果未能解决你的问题,请参考以下文章

你知道的Go切片扩容机制可能是错的

小程序各种功能代码片段整理---持续更新

异常和TCP通讯

14.VisualVM使用详解15.VisualVM堆查看器使用的内存不足19.class文件--文件结构--魔数20.文件结构--常量池21.文件结构访问标志(2个字节)22.类加载机制概(代码片段

SpringCloud系列四:Eureka 服务发现框架(定义 Eureka 服务端Eureka 服务信息Eureka 发现管理Eureka 安全配置Eureka-HA(高可用) 机制Eur(代码片段

如何向 ViewPager 提供许多片段并避免错误代码?