2016-08-03 2 views
0

나는Laravel 5 -이 필터에 문제가 있습니까?

Route::get('/{var?}',['uses'=>'[email protected]', 'as'=>'wrongCred'])->where('var', '[wrongCredentials]+'); 

는 그냥에만 URL:myproject.com/wrongCredentials[email protected]에 보내기 경로를합니다.

작동하지 않습니다.

/rat, /wo, /wrongCredentials과 다른 문자열을 입력하면 코드가 나를 컨트롤러로 보냅니다.

내가 /bat, cat/을 입력하면 다른 사람은 입력하지 않습니다.

이미 같은 다른 조합을 시도했다 :

Route::get('/{var?}',['uses'=>'[email protected]', 'as'=>'wrongCred'])->where('var', '[^wrongCredentials$]+'); 

Route::get('/{var?}',['uses'=>'[email protected]', 'as'=>'wrongCred'])->where('var', '[/^wrongCredentials$/]+'); 


Route::get('/{var?}',['uses'=>'[email protected]', 'as'=>'wrongCred'])->where('var', '/^[wrongCredentials]$/+'); 

을하지만 그들 중 누구도 제대로 작동하지 않습니다.

누군가 내가 누락 된 부분을 말할 수 있습니까?

+0

당신이 경로는 : '/ {var에?}'(수'시도 했 특수 문자없이 "wrongCredentials"를 사용 => '인 IndexController @ wrongCredentials'= '로' > 'wrongCred']) -> 여기서 ('var', 'wrongCredentials'); ' –

+0

와우! 나는 내가 REGEX에 그렇게 고정되어 있다는 것을 모른다. – zwitterion

+0

대답을 – zwitterion

답변

1

는 그냥 [ '사용' Route::get('/{var?}',['uses'=>'[email protected]', 'as'=>'wrongCred'])->where('var', 'wrongCredentials');