跟我學(xué)laravel之請求與輸入
來源:易賢網(wǎng) 閱讀:739 次 日期:2016-06-16 10:55:43
溫馨提示:易賢網(wǎng)小編為您整理了“跟我學(xué)laravel之請求與輸入”,方便廣大網(wǎng)友查閱!

基本輸入

laravel使用一種簡單的方式來訪問用戶提交的信息。 你可以用統(tǒng)一的方式來訪問用戶提交的信息,而不用為用戶提交信息的方式操心。

獲取一個用戶提交的值

代碼如下:

$name = input::get('name');

為用戶提交信息指定一個的默認(rèn)返回值(如果用戶未提交)

代碼如下:

$name = input::get('name', 'sally');

判斷指定的提交信息是否存在

代碼如下:

if (input::has('name'))

{

//

}

獲取所有用戶提交的信息

代碼如下:

$input = input::all();

獲取指定的信息,或者獲取排除指定幾個提交項之外的所有提交信息

代碼如下:

$input = input::only('username', 'password');

$input = input::except('credit_card');

如果提交的表單含有 數(shù)組 形式的輸入,可以使用點符號訪問數(shù)組:

代碼如下:

$input = input::get('products.0.name');

注意: 有一些javascript庫,比如 backbone 會以json格式提交信息。 通過 input::get 來獲取信息,使用上無差別。

cookies

laravel會加密所有已創(chuàng)建的cookie信息,并附加上授權(quán)碼,當(dāng)客戶端擅自修改cookie信息時,該cookie將被廢棄,從而保證安全性。

獲取一個指定的cookie值

代碼如下:

$value = cookie::get('name');

添加一個新的cookie鍵值對

代碼如下:

$response = response::make('hello world');

$response->withcookie(cookie::make('name', 'value', $minutes));

加入下一個response的cookie隊列之中

如果想在response創(chuàng)建之前設(shè)置cookie,可以使用 cookie::queue() 方法。cookie將通過應(yīng)用框架自動添加到最終的response之中。

代碼如下:

cookie::queue($name, $value, $minutes);

創(chuàng)建一個永不過期的cookie鍵值對

代碼如下:

$cookie = cookie::forever('name', 'value');

用戶提交信息持久化

有時可能需要在用戶的多個請求之間持久化用戶提交的信息。 比如,當(dāng)用戶提交的信息驗證失敗重新返回提交信息頁面時還原用戶的輸入。

將用戶提交的信息存入session

代碼如下:

input::flash();

把指定的用戶提交的信息存入session

代碼如下:

input::flashonly('username', 'email');

input::flashexcept('password');

如果你需要關(guān)聯(lián)持久用戶提交的信息的操作和重定向操作,可以使用如下的鏈?zhǔn)秸{(diào)用的方法:

代碼如下:

return redirect::to('form')->withinput();

return redirect::to('form')->withinput(input::except('password'));

注意: 如果你想持久化其它的信息,請參考 session 類.

獲取已持久化的用戶提交的信息

代碼如下:

input::old('username');

文件上傳

獲取用戶上傳的文件

代碼如下:

$file = input::file('photo');

判斷指定文件是否已經(jīng)被上傳

代碼如下:

if (input::hasfile('photo'))

{

//

}

file 方法返回了一個 symfony\component\httpfoundation\file\uploadedfile 類的實例, 該類繼承自php的 splfileinfo 類,并提供了大量操作該用戶上傳的文件的方法。

移動一個已上傳的文件

代碼如下:

input::file('photo')->move($destinationpath);

input::file('photo')->move($destinationpath, $filename);

獲取一個已上傳的文件在服務(wù)器的真實路徑

代碼如下:

$path = input::file('photo')->getrealpath();

獲取一個已上傳的文件的大小

代碼如下:

$size = input::file('photo')->getsize();

獲取一個已上傳的文件的 mime 類型

代碼如下:

$mime = input::file('photo')->getmimetype();

用戶請求的詳細信息

request 類提供了許多 方法 用于獲取關(guān)于請求的詳細信息,該類繼承自 symfony\component\httpfoundation\request 類。 下面提供了幾個具有代表性的方法:

獲取請求uri

$uri = request::path();

判斷請求路徑是否符合指定模式

代碼如下:

if (request::is('admin/*'))

{

//

}

獲取請求url

$url = request::url();

獲取請求uri信息

$segment = request::segment(1);

獲取請求頭里的content-type信息

$value = request::header('content-type');

獲取 $_server 數(shù)組里指定的值

$value = request::server('path_info');

判斷是否是使用ajax請求

代碼如下:

if (request::ajax())

{

//

}

判斷請求是否使用https連接

代碼如下:

if (request::secure())

{

//

}

檢測請求的響應(yīng)格式

request::format 方法基于 http 請求頭的 accept 信息返回客戶端希望獲取的響應(yīng)格式:

代碼如下:

if (request::format() == 'json')

{

//

}

更多信息請查看腳本欄目
易賢網(wǎng)手機網(wǎng)站地址:跟我學(xué)laravel之請求與輸入
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報警專用圖標(biāo)