5.关于laravel框架中Contorller

1.Controller中Request
public function request(Request $request){
        //1.取url中的值
       echo $request->input('name');
       //输出所有值
        $str = $request->all();
        //dd($str);
       //2.判断是否存在值
       if($request->has('name')){
           echo $request->input('name');
       }else{
           echo '无参数';
       }

       //3.判断请求类型
       echo $request->method();
       //判断是否为想要的请求类型
       if($request->isMethod('POST')){
           echo 'yes';
       }else{
           echo 'no';
       }
       //判断是否为ajax请求
       $res = $request->ajax();
       //dd($res);
       //判断当前路由是否满足自己设定的规则
        $resture = $request->is('test/*');
       dd($resture);
       //输出当前的url,输出结果不带参数
       echo $request->url();

    }

2.Controller中Session
首先需要sessionstatrt,laravel中,sessionstart在中间件web中,所有路由形式可以写成
Route::group(['middleware'=>['web']],function (){
    Route::any('/session1',['uses'=>'StudentController@session1']);
    Route::any('/session2',['uses'=>'StudentController@session2']);
});

初次体验中,Session::put和Session::get均无法使用,不确定是否是版本问题

session用法
public function request(Request $request){
            //1.取url中的值
           echo $request->input('name');
           //输出所有值
            $str = $request->all();
            //dd($str);
           //2.判断是否存在值
           if($request->has('name')){
               echo $request->input('name');
           }else{
               echo '无参数';
           }
           //3.判断请求类型
           echo $request->method();
           //判断是否为想要的请求类型
           if($request->isMethod('POST')){
               echo 'yes';
           }else{
               echo 'no';
           }
           //判断是否为ajax请求
           $res = $request->ajax();
           //dd($res);
           //判断当前路由是否满足自己设定的规则
            $resture = $request->is('test/*');
           dd($resture);
           //输出当前的url,输出结果不带参数
           echo $request->url();

        }
        public function session1(Request $request){
            //1.Http request session()
            // $request->session()->put('key1','value1');
            //2.session()
            //  session()->put('key2','value2');
            //3.Session
            //Session::forget('key1');
            $request->session()->put('key3','test');
            //Session::put('key3','value3'); laravel-v5.2.15无效
            // dd( Session::all() ); //取出来看看是否put成功 可用
            if(Session::has('key3')){
                echo 'session zc';
            }else{
                echo '失败';
            }
        }
        public function session2(Request $request){
            //1.Http request session()
            //echo $request->session()->get('key1');
            //2.session()
            //echo session()->get('key2');
            //3.Session
           // echo Session::get('key3');  laravel-v5.2.15无效
          //  echo $request->session()->get('key2','default');//获取session中的key2,不存在则输出一个默认值
           //Session::get('key2','default');
       //     echo $request->session()->pull('key3','no');//获取session中的key3值,并删除该session
            //Session::pull('key2',default);
            //以数组的形式存储session
//            1
/*            $request->session()->put([
                'key1'=>'key1',
                'key2'=>'key2',
                'key3'=>'key3',
            ]);
            dd (session()->all());*/
//            2
            //Session::push('xx','xx');
            $request->session()->push('test1','test1');
            $request->session()->push('test1','test2');
            $request->session()->push('test1','test3');
            dd(session()->all());
        }
一个关于laravel中session的小总结:
1.永久存储:put('xx','yy');
2.获取数据:get('xx');
3.获取所有:get()->all();
4.获取后删除:pull('xx');
5.判断存在:has('xx');
6.快闪数据:flash('xx','yy');//获取一次后就删除
7.删除指定数据:forget('xx');
8.删除所有数据:flush();
9.数组形式:1.push();  2.put(['xx'=>'yy']);
 
  

public function request(Request $request){
            //1.取url中的值
           echo $request->input('name');
           //输出所有值
            $str = $request->all();
            //dd($str);
           //2.判断是否存在值
           if($request->has('name')){
               echo $request->input('name');
           }else{
               echo '无参数';
           }

           //3.判断请求类型
           echo $request->method();
           //判断是否为想要的请求类型
           if($request->isMethod('POST')){
               echo 'yes';
           }else{
               echo 'no';
           }
           //判断是否为ajax请求
           $res = $request->ajax();
           //dd($res);
           //判断当前路由是否满足自己设定的规则
            $resture = $request->is('test/*');
           dd($resture);
           //输出当前的url,输出结果不带参数
           echo $request->url();

        }
        public function session1(Request $request){
            //1.Http request session()
            // $request->session()->put('key1','value1');
            //2.session()
            //  session()->put('key2','value2');
            //3.Session
            //Session::forget('key1');
            $request->session()->put('key3','test');
            //Session::put('key3','value3'); laravel-v5.2.15无效
            // dd( Session::all() ); //取出来看看是否put成功 可用
            if(Session::has('key3')){
                echo 'session zc';
            }else{
                echo '失败';
            }
        }
        public function session2(Request $request){
            //1.Http request session()
            //echo $request->session()->get('key1');
            //2.session()
            //echo session()->get('key2');
            //3.Session
           // echo Session::get('key3');  laravel-v5.2.15无效
          //  echo $request->session()->get('key2','default');//获取session中的key2,不存在则输出一个默认值
           //Session::get('key2','default');
       //     echo $request->session()->pull('key3','no');//获取session中的key3值,并删除该session
            //Session::pull('key2',default);

            //以数组的形式存储session
//            1
/*            $request->session()->put([
                'key1'=>'key1',
                'key2'=>'key2',
                'key3'=>'key3',
            ]);
            dd (session()->all());*/
//            2
            //Session::push('xx','xx');
            $request->session()->push('test1','test1');
            $request->session()->push('test1','test2');
            $request->session()->push('test1','test3');
            dd(session()->all());


        }
public function request(Request $request){
            //1.取url中的值
           echo $request->input('name');
           //输出所有值
            $str = $request->all();
            //dd($str);
           //2.判断是否存在值
           if($request->has('name')){
               echo $request->input('name');
           }else{
               echo '无参数';
           }

           //3.判断请求类型
           echo $request->method();
           //判断是否为想要的请求类型
           if($request->isMethod('POST')){
               echo 'yes';
           }else{
               echo 'no';
           }
           //判断是否为ajax请求
           $res = $request->ajax();
           //dd($res);
           //判断当前路由是否满足自己设定的规则
            $resture = $request->is('test/*');
           dd($resture);
           //输出当前的url,输出结果不带参数
           echo $request->url();

        }
        public function session1(Request $request){
            //1.Http request session()
            // $request->session()->put('key1','value1');
            //2.session()
            //  session()->put('key2','value2');
            //3.Session
            //Session::forget('key1');
            $request->session()->put('key3','test');
            //Session::put('key3','value3'); laravel-v5.2.15无效
            // dd( Session::all() ); //取出来看看是否put成功 可用
            if(Session::has('key3')){
                echo 'session zc';
            }else{
                echo '失败';
            }
        }
        public function session2(Request $request){
            //1.Http request session()
            //echo $request->session()->get('key1');
            //2.session()
            //echo session()->get('key2');
            //3.Session
           // echo Session::get('key3');  laravel-v5.2.15无效
          //  echo $request->session()->get('key2','default');//获取session中的key2,不存在则输出一个默认值
           //Session::get('key2','default');
       //     echo $request->session()->pull('key3','no');//获取session中的key3值,并删除该session
            //Session::pull('key2',default);

            //以数组的形式存储session
//            1
/*            $request->session()->put([
                'key1'=>'key1',
                'key2'=>'key2',
                'key3'=>'key3',
            ]);
            dd (session()->all());*/
//            2
            //Session::push('xx','xx');
            $request->session()->push('test1','test1');
            $request->session()->push('test1','test2');
            $request->session()->push('test1','test3');
            dd(session()->all());


        }

保留几个学习用的小网站:
http://www.bootcss.com/
https://weui.io/
艺术类:http://so.uigreat.com/

3.Conroller-Response
 public function response(){
        //echo 'response';
        //响应json数据
/*        $str =[
            'error' =>0,
            'errMsg'=>'success',
            'name'  =>'Error',
        ];
        return response()->json($str);*/
        //重定向
       // return redirect('session2');
        return redirect('session2')->with('msg','test');//跳转,并带入数据,数据属于快闪数据,只显示一次
        return redirect()->back();//返回上一级页面

    }

待理解清楚

你可能感兴趣的:(laravel学习笔记)