国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

laravel階段總結(jié)

Original 2019-01-21 17:05:17 311
abstract:Laravel階段總結(jié)    一.路由    在routes/web.php中寫入路由    1.Route::get()來(lái)設(shè)置get請(qǐng)求的路由參數(shù)//訪問根目錄時(shí),返回welcome視圖 Route::get('/', function ()

Laravel階段總結(jié)

    一.路由

    在routes/web.php中寫入路由

    1.Route::get()來(lái)設(shè)置get請(qǐng)求的路由參數(shù)

//訪問根目錄時(shí),返回welcome視圖
Route::get('/', function () {    
    return view('welcome');
});
//訪問/hello時(shí),返回hello視圖
Route::get('/hello', function () {
    return view('hello');
});

    2.Route::post()設(shè)置post請(qǐng)求的路由參數(shù)

//post請(qǐng)求hello2,返回html代碼
Route::post('hello2',function (){
   return '<h1>hello2</h1>';
});

    3.Route::match()匹配第一個(gè)參數(shù)數(shù)組中的請(qǐng)求方式的路由參數(shù)

//match 匹配數(shù)組中方式
Route::match(['get','post'],'hello3',function (){
    return '<h1>get/post請(qǐng)求返回</h1>';
});

    4.Route::any() 任何請(qǐng)求方式的路由參數(shù)

Route::any('hello4',function (){
    return '<h4>任何方法</h4>';
});

    5.Route::view()單請(qǐng)求方式

Route::view('/','welcome');    //訪問根目錄 返回welcome視圖

    6.Route('路徑/{參數(shù)名}')路由參數(shù)  {參數(shù)?}為可選參數(shù),需要在后面的閉包中傳入默認(rèn)值.求要寫到必選參數(shù)后面以防出錯(cuò)

Route::get('new2/{name}/{id?}',function ($name,$id=1){
    return '我的名字'.$name.' id = '.$id;
});

    7.Route::get()->where(array)驗(yàn)證路由參數(shù)的規(guī)則(正則)

Route::get('new3/{name}/{id?}',function ($name,$id){
    return '我的名字'.$name.' id = '.$id;
})->where(
    ['name'=>'[a-zA-z]+',    //name必須是一個(gè)或以上的字母
     'id'=>'[0-9]*'          //id必須是0-9的數(shù)字
    ]);

    8.設(shè)置控制器訪問路由 模塊/控制器@方法

Route::get('admin/index/{course?}','admin\Index@index');

--------------------------------------------------------------------------

    二.控制器 在app/Http/controllers里

    1.簡(jiǎn)單的一個(gè)控制器   返回視圖admin模塊/index控制器/index方法的視圖 對(duì)應(yīng)resources/views/admin/index/index.blade.php

public function index($course = 'laravel'){
    return view('admin.index.index',['course'=>$course]);
}

-----------------------------------------------------------------------------

    三.請(qǐng)求對(duì)象

    1.構(gòu)造方法注入請(qǐng)求對(duì)象

    就是在構(gòu)造器中將請(qǐng)求對(duì)象以參數(shù)的形式傳入構(gòu)造方法中 

    這樣只要訪問這個(gè)控制器,都會(huì)觸發(fā)先觸發(fā)這個(gè)構(gòu)造方法

use Illuminate\Http\Request;

class Index
{
    protected $request = null;
    //構(gòu)造方法注入
    public function __construct(Request $request)
    {
        $this->request = $request;
        dump($this->request);
    }

    2.普通方法注入

protected $request = null;
public function demo(Request $demo)
{
    $this->request = $demo;
    dump($this->request);
}
//訪問admin 模塊的index控制器的demo方法
//Route::get('admin/demo','admin\Index@demo');

    3.依賴注入方法獲取請(qǐng)求對(duì)象參數(shù)   use Illuminate\Http\Request;

    注入到普通方法中后,可以使用這個(gè)對(duì)象中的很多方法

    也可以通過對(duì)象屬性的方法來(lái)獲取參數(shù)

    public function reque(Request $request)
    {
        //獲取所有普通參數(shù)
        dump($request->input());
        //獲取指定參數(shù)
        dump($request->input('name'));
        //獲取不存在的參數(shù)
        dump($request->input('salary',6000));
        //僅獲取一個(gè)參數(shù)
        dump($request->only('name'));
        //獲取除了指定的其他的普通參數(shù)
        dump($request->except('name'));
        //獲取路由變量
        dump($request->route('id'));
//        dump($request->route());

        //對(duì)象屬性方法獲取參數(shù)
        dump($request->name);
        dump($request->id);
    }

    4.助手函數(shù)requset()來(lái)獲取參數(shù)

//助手函數(shù)獲取url參數(shù)
public function delete()
{
    dump(request()->input());
    //獲取指定參數(shù)
    dump(request()->input('name'));
    //獲取不存在的參數(shù)
    dump(request()->input('salary',7000));
    //僅獲取一個(gè)參數(shù)
    dump(request()->only('name'));
    //獲取除了指定的其他的普通參數(shù)
    dump(request()->except('name'));
    //獲取路由變量
    dump(request()->route('id'));

    //對(duì)象屬性方法獲取參數(shù)
    dump(request()->name);
    dump(request()->id);
}

-------------------------------------------------------------------------------

    四.響應(yīng)對(duì)象

    1.返回字符串

Route::get('admin/test',function (){
    return 'laravel';
})

    2.返回?cái)?shù)組,會(huì)自動(dòng)轉(zhuǎn)換為json格式

Route::get('admin/test2',function (){
    return ['name'=>'darwin','age'=>20];
});

    3.返回對(duì)象  use Illuminate\Http\Response;  

     setContent()設(shè)置內(nèi)容

    header()設(shè)置請(qǐng)求頭

    cookie()設(shè)置cookie()

use Illuminate\Http\Response;
Route::get('admin/test3',function (Response $response){
    return $response->setContent('塞爾達(dá)天下第一');
});
Route::get('admin/test4',function (Response $response){
    return $response->setContent('塞爾達(dá)天下第一')
        ->header('content-type','application/json')
        ->cookie('name','塞爾達(dá)');
});

    4.助手函數(shù)  response('內(nèi)容')

Route::get('admin/test5',function (){
    return response('塞爾達(dá)天下第一!!!')->setContent('真的!!!')
        ->header('content-type','application/json')
        ->cookie('name','塞爾達(dá)');
});

    5.視圖響應(yīng)    view()返回對(duì)應(yīng)視圖模板

Route::get('admin/test6',function (){
    return response()->view('welcome');
});

    6.轉(zhuǎn)換json格式   json()

Route::get('admin/test7',function (){
    return response()->json(['name'=>'darwin','age'=>20]);
});


Correcting teacher:天蓬老師Correction time:2019-01-21 17:49:43
Teacher's summary:其實(shí)一個(gè)訪問 , 應(yīng)該從路由開始, 這是非常自然的, 其中閉包路由, 無(wú)疑是最簡(jiǎn)單的, 也是最方便的,可以做非常多的事

Release Notes

Popular Entries