laravel中必須先配置路由,才能使用。不像tp中不配置也能使用,因為" />

laravel框架中路由設置,路由參數和路由命名實例分析

 更新時間:2020-01-15 16:00:04   作者:佚名   我要評論(0)

本文實例講述了laravel框架中路由設置,路由參數和路由命名。分享給大家供大家參考,具體如下:
laravel中必須先配置路由,才能使用。不像tp中不配置也能使用,因為

本文實例講述了laravel框架中路由設置,路由參數和路由命名。分享給大家供大家參考,具體如下:

laravel中必須先配置路由,才能使用。不像tp中不配置也能使用,因為tp可以通過pathinfo進行自動解析。

一、簡單的路由設置

我們一般在routes/web.php文件中配置網頁端路由。

//參數一,表示uri路徑
//參數二,閉包函數,處理響應
Route::get('/test', function () {
  return '測試';
});

二、路由方法,處理特定http請求方式

Route::get('/', function () {});
Route::post('/', function () {});
Route::delete('/', function () {});

也可以通過Route::any()捕獲任意請求方式

Route::any('/', function () {});

也可以通過Route::match()處理指定的請求方式

Route::match(['get', 'post'], '/', function () {});

三、將路由映射到控制器方法

Route::get('/hello', '[email protected]');

將/hello的處理映射到app/Http/Controllers/HelloController.php的index方法。

如果我們在Controllers目錄下創建了多層目錄,可以通過(目錄\...\控制器@方法)的方式:

Route::get('/hello', 'Hello\[email protected]');

四、路由參數

有些時候需要路由上傳遞參數,只需在路由路徑中標識即可。

Route::get('/list/{page}', function ($page) {
  return "當前頁數{$page}";
});

不過上面的page參數是必傳的,如果沒傳將會報錯找不到。這時候可以在標識后面加個?,表示可選,并給函數參數一個默認值。

Route::get('/list/{page?}', function ($page = 1) {
  return "當前頁數{$page}";
});

我們也可以為路由參數設置正則規則,保證參數的正確性

Route::get('/search/{key?}/{page?}', function ($key = '', $page = 1) {
  return "搜索 {$key} 頁數 {$page}";
})->where(['key' => '[A-Za-z]+', 'page' => '[0-9]+']);

獲取路由參數

Route::get('/search/{key?}/{page?}', function (Request $req) {
  //獲取單個路由參數
  var_dump($req::route('key'));
  //獲取所有路由參數
  var_dump($req::route()->parameters());
});

通過Request::all()獲取普通參數,類似?a=a&b=b&c=c

Route::get('/search/{key?}/{page?}', function (Request $req, $key = '', $page = 1) {
  var_dump($key);
  var_dump($page);
  var_dump($req::all());
});

五、路由命名

我們可以給路由設置一個名字,方便在視圖中使用

Route::get('/list/{page?}', function ($page = 1) {
  return view('list', ['page' => $page]);
})->name('list.page');

我們在resources/views/list.blade.php視圖中,通過 route() 方法來顯示該路由地址

{{ route('list.page', ['page' => $page]) }}

更多關于Laravel相關內容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優秀開發框架總結》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。

您可能感興趣的文章:

  • Laravel框架路由配置總結、設置技巧大全
  • Laravel中獲取路由參數Route Parameters的五種方法示例
  • Laravel最佳分割路由文件(routes.php)的方式
  • Laravel 4 初級教程之視圖、命名空間、路由
  • laravel中命名路由的使用方法
  • Laravel 5框架學習之路由、控制器和視圖簡介
  • Laravel中重寫資源路由自定義URL的實現方法
  • Laravel框架模板加載,分配變量及簡單路由功能示例
  • Laravel框架路由和控制器的綁定操作方法
  • Laravel框架路由設置與使用示例
  • Laravel路由設定和子路由設定實例分析

相關文章

  • laravel框架中路由設置,路由參數和路由命名實例分析

    laravel框架中路由設置,路由參數和路由命名實例分析

    本文實例講述了laravel框架中路由設置,路由參數和路由命名。分享給大家供大家參考,具體如下: laravel中必須先配置路由,才能使用。不像tp中不配置也能使用,因為
    2020-01-15
  • php pdo連接數據庫操作示例

    php pdo連接數據庫操作示例

    本文實例講述了php pdo連接數據庫操作。分享給大家供大家參考,具體如下: pdo連接數據庫的有點是能實現不同數據庫之間的轉換,而且有事務功能的回滾,更有pdo::pre
    2020-01-15
  • PHP cookie與session會話基本用法實例分析

    PHP cookie與session會話基本用法實例分析

    本文實例講述了PHP cookie與session會話基本用法。分享給大家供大家參考,具體如下: cookie即是傳統的會話控制,由于要存儲的信息是保存在客戶端的,所以安全系數較
    2020-01-15
  • Yii框架 session 數據庫存儲操作方法示例

    Yii框架 session 數據庫存儲操作方法示例

    本文實例講述了Yii框架 session 數據庫存儲操作方法。分享給大家供大家參考,具體如下: 在組件中聲明session 組件開啟數據庫庫存儲 [ 'components' => [ '
    2020-01-15
  • php 多繼承的幾種常見實現方法示例

    php 多繼承的幾種常見實現方法示例

    本文實例講述了php 多繼承的幾種常見實現方法。分享給大家供大家參考,具體如下: class Parent1 { function method1() {} function method2() {} } class Pa
    2020-01-15
  • PHP中通過getopt解析GNU C風格命令行選項

    PHP中通過getopt解析GNU C風格命令行選項

    在 PHP 中,當我們在獲取命令行參數時,可以通過遍歷$argv來獲取,其實呢是有規范可循的,也就是 GNU C-style parser for command line options 。 比如使用命令wge
    2020-01-15
  • laravel框架中表單請求類型和CSRF防護實例分析

    laravel框架中表單請求類型和CSRF防護實例分析

    本文實例講述了laravel框架中表單請求類型和CSRF防護。分享給大家供大家參考,具體如下: laravel中為我們提供了綁定不同http請求類型的函數。 Route::get('/test
    2020-01-15
  • php 使用 __call實現重載功能示例

    php 使用 __call實現重載功能示例

    本文實例講述了php 使用 __call實現重載功能。分享給大家供大家參考,具體如下: <&#63;php /** * Created by PhpStorm. * User: funco * Date: 17-6-9 * Tim
    2020-01-15
  • laravel框架中視圖的基本使用方法分析

    laravel框架中視圖的基本使用方法分析

    本文實例講述了laravel框架中視圖的基本使用方法。分享給大家供大家參考,具體如下: laravel中的視圖默認保存在 resources\views 目錄下。在控制器中,我們通常使用
    2020-01-15
  • php傳值和傳引用的區別點總結

    php傳值和傳引用的區別點總結

    php傳值:在函數范圍內,改變變量值得大小,都不會影響到函數外邊的變量值。 PHP傳引用:在函數范圍內,對值的任何改變,在函數外部也有所體現,因為傳引用傳的是內
    2020-01-15

最新評論

买宝宝用品赚钱吗