2011-11-21 2 views
0

매개 변수,이를 사용할 수 있습니다CakePHP는 1.3 -> 2.0 마이그레이션 문제 - URL 내가 변수는 URL을 전송 GET 가려고 CakePHP는 1.3에서

$this->params['url']; 

예 : url = www.mySite.com/messages/get/?var1=1&var2=2

Array => ([url] => Array 
    (
    [url] => messages/get 
    [var1] => 1 
    [var2] => 2 
    ) 
) 

하지만 cakePHP2.0를 사용하여 동일한 URL에서 그 PARAMS을 얻을 때, 결과는 JSON 형식으로되어 있습니다 : $this->params['url'];의 결과는

{"params":{"controller":"messages","named":[],"pass":[],"action":"index","plugin":null}} 

배열에 'url'색인이 없으므로 속성 $ params 또는 다른 것을 사용하여 게시 한 url에 변수를 보내는 방법을 알고 계십니까?

편집 : 내가 요리 책 cakePHP2.0에서 이것을 시도

:

<?php 
// url is /posts/index?page=1&sort=title 
$this->request->query['page']; 

// You can also access it via array access 
$this->request['url']['page']; 

하지만 난이 같은 오류 있어요 :

Notice (8): Undefined index: page [APP\Controller\MessagesController.php, line 23] 

Notice (8): Undefined index: page [APP\Controller\MessagesController.php, line 24] 

어떤 아이디어 ??? 나는이 같은 URL에 전송 된 변수를 얻을 수있는 방법 :

/posts/index?page=1&sort=title 

답변

2

다른 것들 사이 쿼리 문자열을 처리 2.0의 새로운 Request 객체가있어 다음 2.0 Request object docs에서

<?php 
// url is /posts/index?page=1&sort=title 
$this->request->query['page']; 

// You can also access it via array access 
$this->request['url']['page']; 

.

+0

감사 (추출물 ?&와) /posts/index?&page=1&sort=title 경우

그것은에만 작동합니다, 나는이 시도하고 – Houcine

+0

를 작동하는 경우 내가 같은 오류가 발생했습니다 다시 말해, 내 편집을 볼 수 – Houcine

+0

좋아, 나는 어리석은 실수를 저질 렀다. :) 감사합니다 – Houcine

0

버그가있는 것 같습니다. URL이 답장을 보내

+0

$ this-> request-> url을 사용하십시오 –