질문을 삭제하지 말아주세요.!
 
1
0
-1

안녕하세요? 

김주원 님이 쓰신 라라벨로 배우는 실전 php 웹프로그래밍 책을 아주 잘 보고 있습니다. ^^

현재 23단원을 학습중인데, 잠시 궁금한게 생겨서 질문드리고자 합니다.


라우터 작성 할 때, 책에는,

Route::get('auth/register', [

    'as'=> 'users.create',

    'uses' => ' UsersController@create'

]);


라고 나와있는데요, 이 뜻이 정확히

Route::get(

    'auth/register',

    'UsersController@create',

])→name('users.create')


와 같은건가요? 

만약 같다면, 책에서 나온 내용의 경우엔 당시 laravel이

→name()을 지원하지 않아서 인가요? 

    CommentAdd your comment...

    2 answers

    1.  
      2
      1
      0

      예 정확히 맞습니다. name() API는 5.4부터 쓸 수 있고, 책은 5.3때 집필했기 때문입니다. 역호환되기 때문에 'as'와 'uses'의 연관 배열을 사용하는 용법은 여전히 작동하며, name()은 편의 문법(syntactic sugar)이며, 코어 안쪽에서는 여전히 이 문법을 사용하고 있습니다.

      https://github.com/laravel/framework/blob/5.5/src/Illuminate/Routing/Route.php#L619-L624

      1. 전종훈

        5.4때부터 지원 된 기능이군요.. 답변 감사합니다!! 

      CommentAdd your comment...
    2.  
      2
      1
      0

      5.2에서는 name 메서드가 없었던게 맞고요, 두 표현식은 동일한 역할을 합니다. 취향에 따라 골라서 쓰시면되요. 전 후자를 선호합니다. (smile)

      1. 전종훈

        저도 후자처럼 쓰고 싶었는데 혹시나 전자께 다른 용도로 더 쓰일 수 있나 싶어서 질문 드렸습니다! 답변 감사합니다

      CommentAdd your comment...