Request

一、取值

1.取值

echo $request->input('name','这是默认值');

2.取得所有值

$array=$request->all();

3.判断值是否存在

if ($request->has('name')){
    echo $request->input('name','默认值');
}else{
    echo '不存在该值';
}

二、判断请求类型

1.直接返回请求类型

echo $request->method();

2.判断是否为某种请求类型

$bool=$request->isMethod('get');

3.判断是否为ajax请求

$bool=$request->ajax();

4.判断是否为指定的url路径

// *代表request下任意路径
$bool=$request->is('request/*');

Session

使用session之前,先要开启session。在laravel中,配置如下:

Route::group(['middleware'=>['web']],function (){
    Route::get('session1','StudentController@session1');
    Route::get('session2','StudentController@session2');
});

一、HTTP Request session

1.赋值

$request->session()->put('key1','val1');

2.取值

echo $request->session()->get('key1');

二、Session辅助函数

1.赋值

session()->put('key1','val1');

2.取值

echo session()->get('key1');

三、Session类

1.赋值

// 存单个值
Session::put('key3','val3');
// 以数组形式存
Session::put(['key4'=>'val4']);
// 存session数组
Session::push('student','tom');
Session::push('student','mary');

2.取值

// 取单个值
echo Session::get('key3','默认值');
// 取session数组
$array=Session::get('student','默认值');
// 取一次之后删除session
$array=Session::pull('student','默认值');
// 取出所有session值
$array=Session::all();

3.判断是否存在指定session

if (Session::has('key2')){
  $array=Session::all();
  dd($array);
}else{
  echo '不存在';
}

4.删除指定session

Session::forget('key1');

5.清空session

Session::flush();

5.暂存session(只存储一次,下次访问消失)

Session::flash('flash-key','flash-val');

Response

Response响应的常见类型:字符串、视图、json、重定向

一、响应json

$data=[
    'errCode'=>0,
    'errMsg'=>'success',
    'data'=>'tom'
];
// response辅助函数
return response()->json($data);
// response类
return Response::json($data);

二、重定向

1.重定向到指定页面

路由设置

Route::get('news','StudentController@news')->name('iNews');
Route::get('response','StudentController@response');

控制器下的方法

public function response()
{
   // 1.url形式
   return redirect('news')->with('message','一次性数据');
   // 2.action
   return redirect()->action('StudentController@news')->with('message','一次性数据');
   // 3.route
   return redirect()->route('iNews')->with('message','一次性数据');
}
public function news()
{
    return Session::get('message');
}

2.重定向到上级页面

return redirect()->back();

Laravel5 控制器的更多相关文章

  1. 关于laravel5.5控制器方法参数依赖注入原理深度解析及问题修复

    在laravel5.5中,可以根据控制器方法的参数类型,自动注入一个实例化对象,极大提升了编程的效率,但是相比较与Java的SpringMVC框架,功能还是有所欠缺,使用起来还是不太方便,主要体现在方 ...

  2. Laravel5.1 报错:控制器不存在

    Laravel5.1 报错:控制器不存在 错误提示: Class App\Http\Controllers\Api/UserController does not exist 解决: (1)检查控制器 ...

  3. Laravel5.1的控制器分组

    Laravel5.1的控制器分组 默认的控制器时直接在app\Http\Controllers下,创建分组名字,路由配置使用:分组名\控制器名@方法名.

  4. Laravel5.1控制器小结

    控制器一般存放在app\Http\Controllers目录下,所有Laravel控制器都应继承基础控制器类. 基础控制器 基础控制器例子: <?php namespace App\Http\C ...

  5. laravel5.8笔记五:基类控制器和基类模型

    建立基类的目的就是为了方便继承.比如:Admin模块访问,是否登陆.检测登陆可以写到基类里面 控制器基类 原始基类:app\Http\Controllers\Controller.php,我们下面要做 ...

  6. 【laravel5.6】 laravel中间件内生成参数并且传递到控制器的2种方法

    中间件方法: /** * 自定义中间件: * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return ...

  7. Laravel5.1 -控制器(初步了解)

    首先道个歉 这篇笔记是前两天就应该写的,可大K有点事儿要忙 就耽误了,今天抽空学了学控制器,并写个笔记分享下. 为什么要使用控制器 像我们之前写一些逻辑呢都是在Route(路由)中,搞得Route文件 ...

  8. Laravel5.1学习笔记4 控制器

    HTTP 控制器 简介 基础控制器 控制器中间件 RESTful 资源控制器 隐式控制器 依赖注入和控制器 路由缓存 简介 除了在单一的 routes.php 文件中定义所有的请求处理逻辑之外,你可能 ...

  9. Laravel5.0学习--03 Artisan命令

    本文以laravel5.0.22为例. 简介 Artisan 是 Laravel 内置的命令行接口.它提供了一些有用的命令协助您开发,它是由强大的 Symfony Console 组件所驱动.利用它, ...

随机推荐

  1. PHP访问连接MYSQL数据库

    1.连接数据库       使用mysql_connect()函数建立与MySQL数据库的连接 源码:$con=mysql_connect("主机名或IP","用户名&q ...

  2. [2016-09-09]IIS站点发布、同步和备份工具MSdeploy(WebDeploy)介绍

    前提准备:完整安装Microsoft Web Deploy 3 下载页面:WebDeploy_amd64_zh-CN.msi msdeploy 同步站点 命令所在目录C:\Program Files\ ...

  3. java基础解析系列(四)---LinkedHashMap的原理及LRU算法的实现

    java基础解析系列(四)---LinkedHashMap的原理及LRU算法的实现 java基础解析系列(一)---String.StringBuffer.StringBuilder java基础解析 ...

  4. 如何通过jmeter使用beanshell进行关联

    关联,大多数都是通过响应的信息抓取部分信息,例如session或者hidden等 在jmeter中要使用关联,分为以下2步: Step 1. 在Sampler请求下添加正则表达式,获得信息,添加 &g ...

  5. SQL Server 的锁定和阻塞

    本帖提供两种做法,可避免在 SQL Server 事务锁定时产生的不正常或长时间阻塞,让用户和程序也无限期等待,甚至引起 connection pooling 连接数超过容量. 所谓的「阻塞」,是指当 ...

  6. Android基础知识大全(精品)

    [1].ProgressBar   <ProgressBar android:id="@+id/progress_bar" android:layout_width=&quo ...

  7. UIButton和UIimageView

    1.按钮控件使用的类是UIButton 点击按钮会触发某个事件 2.按钮控件的初始化 UIButton *button = [UIButton buttonWithType:UIButtonTypeC ...

  8. 【Beta阶段】第七次scrum meeting

    Coding/OSChina 地址 1. 会议内容 学号 主要负责的方向 昨日任务 昨日任务完成进度 接下去要做 99 PM 配合100完成联网功能 100% 设置个人中心的设计 100 DEV 开始 ...

  9. 201521123031 《Java程序设计》第6周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖 ...

  10. 201521123056《Java程序设计》 第2周学习总结

    1. 本周学习总结 String类: 不可变字符串型: 粗略介绍了枚举类型: 完全限定类名: 泛型数组列表的应用: 2. 书面作业 Q1.使用Eclipse关联jdk源代码,并查看String对象的源 ...