1

업로드 파일 이름을 변경하고 싶습니다. 다음은 내가 작성한 코드입니다.Zend_From을 사용하여 업로드하는 동안 파일 이름을 변경하십시오.

$upload = new Zend_File_Transfer_Adapter_Http(); 
$upload->setDestination(IMAGE_PHY_PATH); 
try { 
    //upload received file(s) 
    $upload->addFilter('Rename', array('target' => IMAGE_PHY_PATH."1.jpg", 
             'overwrite' => true)); 
    $upload->receive(); 
} catch (Zend_File_Transfer_Exception $e) { 
    $e->getMessage(); 
} 

누구든지 내 코드에 어떤 문제가 있다고 말할 수 있습니까?

+3

코드에 * 무엇이 잘못 되었습니까? 오류? 그것은 무엇을합니까? – deceze

+0

파일을 업로드하지만 파일의 이름을 바꾸지 않습니다. 제 경우에는 테스트를 위해 "1.jpg"라는 정적 이름을 작성했습니다. 그러나 파일 이름을 정의 된 파일 이름으로 변경하지 않습니다 : ( –

+0

'IMAGE_PHY_PATH'의 값은 무엇입니까? – dbrumann

답변

1
$rename = new Zend_Filter_File_Rename(array(
    'target' => IMAGE_PHY_PATH . '1.jpg', 
    'overwrite' => true 
)); 

$upload->addFilter($rename); 
0

시도 realpath(IMAGE_PHY_PATH). 이렇게하면 절대 경로 이름 (예 : $adapter->setDestination('C:\temp'))이 생성됩니다.

다음은 경로가 존재하고 쓰기 가능한지 확인합니다. 일반적으로 setDestination은 그렇지 않은 경우 예외를 throw해야합니다. 경로가 올바른 경우 try/catch 블록 다음에 $ form-> getValues ​​()를 호출하십시오.