搜尋

首頁  >  問答  >  主體

laravel5路由參數規則問題

如下路由規則限制id為數字,當不是數字就報錯了,怎麼設定其不是數字時提示參數有誤、不存在的文章、或者跳到首頁?

Route::get('article/{id}', function($id) {
    return 'Article:' . $id;
})->where('id', '[0-9]+');
習慣沉默習慣沉默2751 天前733

全部回覆(2)我來回復

  • 我想大声告诉你

    我想大声告诉你2017-05-16 16:58:21

    方法1

    Route::get('article/{id}', function($id) {
        if(is_numeric($id)) {
            return 'Article:' . $id;
        } else {
            return 'Index'
        }
    });
    

    方法2

    Route::group(['prefix' => 'article/'], function() {
        Route::get('{id}', function($id) {
            return 'Article:' . $id;
        })->where('id', '[0-9]+');
        Route::get('{id}', function($id) {
            return 'Index:'.$id;
        });
    });
    

    回覆
    0
  • PHP中文网

    PHP中文网2017-05-16 16:58:21

    建立文件resourcesviewserrors404.blade.php 不存在的路由會跳轉這個文件,具體處理寫在這個文件

    回覆
    0
  • 取消回覆