요청이 처리되기 전에 서버 측 sfRequest 객체에 매개 변수를 어떻게 추가합니까?심포니에서 게시 매개 변수를 수정/추가하는 방법은 무엇입니까?
아래 코드를 시도했지만 작동하지 않습니다.
$request->setParameter('formname[id]');
미리 감사드립니다.
요청이 처리되기 전에 서버 측 sfRequest 객체에 매개 변수를 어떻게 추가합니까?심포니에서 게시 매개 변수를 수정/추가하는 방법은 무엇입니까?
아래 코드를 시도했지만 작동하지 않습니다.
$request->setParameter('formname[id]');
미리 감사드립니다.
sfRequest 객체에 매개 변수를 추가하는 것은 매우 간단합니다. 배열 매개 변수 와
$request->setParameter('newParam', 'newParamValue');
//see your added param
var_dump($request->getParameter('newParam'));
난 당신이 직면 한 것 같아요 문제는, 당신은 당신의 매개 변수 "는 FormName"을 "ID"를 추가 할 세웠 죠.
$newParams = array('id'=>1);
//Merge the existing values in formname with your new value
$formnameArray = $request->getParameter('formname');
$mergedArray = array_merge($formnameArray, $newParams);
//save it back in the request obj
$request->setParameter('formname', $mergedArray);
이 작업을 수행해야합니다.
위의 솔루션은 다중 레벨 어레이 (예 : i18n)로 구현할 수 없습니다.
//get the array
$formnameArray = $request->getParameter('formname');
//alter the array
$formnameArray['id'] = $newID;
$request->setParameter('formname', $formnameArray);
두뇌를 병합 할 필요가 없습니다.
$request
에서 공개 request
속성에 액세스하고 매개 변수를 설정하거나 추가 할 수 있습니다. 예 :
$request->request->set("p1", "v1");
$request->request->set("p2", "v2");
또는
$request->request->add(array("p1"=>"v1", "p2"=>"v2"));
어떤 목적으로이 작업을 수행 하시겠습니까? setParameter에는 두 개의 필수 인수가 있습니다. – greg0ire
암호화 된 쿠키에서 항목을 가져 와서 요청의 일부로 만들고 싶습니다. – LionHeart