
Yaf_Route_Interface::route를 사용하여 라우팅을 설정할 때, 매개변수를 추가하는 방법은 두 가지가 있습니다.
1. route() 메소드의 두 번째 인자로 배열을 전달하는 방법입니다.
예를 들어, 라우트를 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
php
$route = new Yaf_Route_Rewrite(
array(
'module' => 'default',
'controller' => 'index',
'action' => 'index',
),
array(
'module' => 'module',
'controller' => 'controller',
'action' => 'action',
)
);
이 경우, 라우트에 'module', 'controller', 'action'이라는 매개변수가 추가됩니다.
2. route() 메소드의 두 번째 인자로 콜백 함수를 전달하는 방법입니다.
예를 들어, 라우트를 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
php
$route = new Yaf_Route_Rewrite(
array(
'module' => 'default',
'controller' => 'index',
'action' => 'index',
),
function($route, $request) {
return array(
'module' => 'module',
'controller' => 'controller',
'action' => 'action',
);
}
);
이 경우, 라우트에 'module', 'controller', 'action'이라는 매개변수가 추가됩니다.
매개변수를 받는 라우트에 값을 전달하는 방법은 다음과 같습니다.
1. URL에 매개변수를 포함하는 방법입니다.
예를 들어, URL을 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
php
http://example.com/module/controller/action/param1/param2
이 경우, 'param1'과 'param2'라는 매개변수가 라우트에 전달됩니다.
2. 요청 객체에 매개변수를 포함하는 방법입니다.
예를 들어, 요청 객체를 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
php
$request->params = array('param1' => 'value1', 'param2' => 'value2');
이 경우, 'param1'과 'param2'라는 매개변수가 라우트에 전달됩니다.
3. 라우트에서 매개변수를 받는 방법입니다.
예를 들어, 라우트를 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
php
$route = new Yaf_Route_Rewrite(
array(
'module' => 'default',
'controller' => 'index',
'action' => 'index',
),
function($route, $request) {
$params = $request->params;
// 매개변수를 처리하는 코드
return array(
'module' => 'module',
'controller' => 'controller',
'action' => 'action',
);
}
);
이 경우, 라우트에서 매개변수를 받을 수 있습니다.
2025-04-23 09:05