2014-08-29 1 views
-1

Symfony 2.5를 사용하여 웹 응용 프로그램을 작성하고 있습니다. 현재 POST/PUT 양식 데이터가 첨부 된 내부 전달 요청으로 고심하고 있습니다. 나는이 질문과 관련하여 이전 질문을 Cerad으로 해결했습니다.양식 객체의 데이터를 값 배열로 추출하십시오.

Subrequests with post vars

을하지만 지금은 전달에 대한 솔루션을 가지고, 나는 부착 할 수있는 값의 배열로 양식 데이터를 추출 할 수있는 방법을 찾을 수있을 수없는 것 : 전체 기사를 참조 하위 요청에. 내가 Form::getData()을 사용하여 시도했지만 엔티티를 반환, 나는 또한 Form::all()을 사용하려고했지만 폼 개체의 배열을 얻을. 나는이 모든 것을 반복하여 형태로 효과적인 가치를 얻을 수 있지만 더 나은 해결책이 있어야한다고 생각합니다.

아이디어가 있으십니까?

답변

0

HTTP 리디렉션을 수행하는 경우 리디렉션하기 전에 세션에 양식 데이터를 모두 저장하고 세션에서 데이터를 읽는 것이 필요합니다.

UPD : 그들은 말했다

:이 정말 쉽게 실제로 당신 Using a Form without a Class

에게 도움이 될 수 있습니다 설명서의 장을 발견했다. 도움이되지 않는 경우 변환 방법 중 하나를 시도해 볼 수 있습니다. ArrayObject 사용

$array = (array) $object; 

또는 get_object_vars()

$array = get_object_vars($object); 

이상을 사용 :

간단한 "캐스팅"(부모 개체의 의지 내부 객체가 객체로 남아있다)

$arrayObject = new ArrayObject($object); 
$array = $arrayObject->getArrayCopy(); 

마지막으로 JSON 인 코드/디코드

$array = json_decode(json_encode($object), true); 
+0

문제는 내가 말한 것처럼 (내부적으로) 리디렉션하지 않기 때문에 브라우저에서 새로운 요청이 없습니다. –

+0

내 업데이트가 의미가 있습니까? – Yaroslav

+0

안녕하세요, json encode/decode가 솔루션 일 수 있다고 생각하지만 컨트롤러간에 요청을 전달하지 않아도되도록 다르게 아키텍처를 구성했습니다. 그럼에도 불구하고 나는 그것을 시험해 보겠다. –

관련 문제