2012-08-28 6 views
7

테이블 (TABLE_FOO)에 매핑되는 PHP 클래스 (POJO_FOO)가 있습니다.PDO에서 객체 배열 반환하기

한 행은 그 클래스의 한 객체와 같습니다.

이제 특정 쿼리와 일치하는 이러한 개체의 배열을 반환하는 관리자를 작성하고 있습니다. PDO을 사용하면 개체 배열을 어떻게 반환 할 수 있습니까?

간단하면 fetchAll 일 때 연관 배열 (column =>value)의 배열 (결과 수를 나타내는)을 반환합니다. fetchALL에 어떤 옵션이 나에게 객체 배열의 형태로 결과를 줄 수 있습니까?

+3

'PDO :: FETCH_CLASS'? – eggyal

+0

와우 작동 ... 시도했을 때 왜 작동하지 않는지 모릅니다. 어쨌든 .. 대답 해줘서 고마워. – mrd081

답변

8

당신은 당신의 데이터 클래스를 수화 PDO :: FETCH_CLASS를 사용할 수 있습니다

return $pdo->query('SELECT * FROM tablefoo')->fetchAll(PDO::FETCH_CLASS|PDO::FETCH_PROPS_LATE,'POJO_FOO'); 

또한 PDO :: FETCH_CLASS 사용하는 것이 유용하다 | 더 객체의 구조를 만들기 때문에 PDO :: FETCH_PROPS_LATE을 일관된. 습관적으로 생성자는 모든 것보다 먼저 호출됩니다. FETCH_PROPS_LATE를 사용하지 않으면 속성이 수화 된 후에 호출됩니다.

+0

와우 작동 ... 시도했을 때 왜 작동하지 않는지 모릅니다. 어쨌든 .. 대답 주셔서 감사합니다 :) – mrd081

+0

PDO에 대해 litle 코멘트 : FETCH_CLASS PDO : FETCH_PROPS_LATE – artragis

+0

그게 어떻게 할 것인가? (FETCH_PROPS_LATE) – mrd081