2012-07-09 3 views
0

내 프로젝트에서 Oracle과 Zend 프레임 워크를 사용하고 있습니다. 나는이 같은 방법으로 정보를 얻으려고 할 때 :Zend Oracle 기본 날짜 형식

$comments = $this->commentModel->fetchAll($where, array('PERSON_COMMENT_ID ASC')); 

$list = array(); 
foreach ($comments as $comment) { 
    $list[] = array(
     'text' => "{$comment['TEXT']}", 
     'date' => $comment['CREATION_DATE'], 
     'comment_id' => "{$comment['PERSON_COMMENT_ID']}", 
     'person_id' => "{$person_id}" 
    ); 
} 

오라클은 나에게 형식 dd.MM.YY 날짜를 반환합니다.

날짜를 얻으려면 어떻게해야합니까? dd.MM.YYYY?

답변

2

당신이 선택한 항목 열을 변경해야하기 때문에 당신이 $where 인수 대신에 fetchAll에 전달 후 원하는 열을 지정하는 SELECT 객체를 준비해야합니다 (TO_CHAR(CREATION_DATE, 'dd.MM.YYYY')-CREATION_DATE 변경). 도움이

그래서

$select = $this->commentModel->select() 
    ->columns(array(..., new Zend_Db_Expr("TO_CHAR(CREATION_DATE, 'dd.MM.YYYY')"))) 
    ->where(...); 

$comments = $this->commentModel->fetchAll($select, array('PERSON_COMMENT_ID ASC')); 

희망. 또한,이 테스트를하지 않은, 그래서 보장은 구문 분석되지 및/또는 제대로 실행됩니다;

편집) :

어쨌든 각 행을 반복하기 때문에

, 그럴 수 단지 date($format, strtotime($comment['CREATION_DATE'])); 모든 일.