2012-07-19 3 views
3

php로 특정 디렉토리에 압축을 풀 수있는 방법이 있는지 알아낼 수 없었습니다. 코드와 같은PHP로 특정 디렉토리에 압축을 풉니 다. ZipArchive

$zip->extractTo("files/"); 

를 사용할 때 디렉토리 "파일"에 대한 우편 번호를 추출하고 우편의 이름과 일치하는 디렉토리 내의 모든 파일을 배치합니다. 업로드하는 측이 업로드 할 디렉토리의 이름을 결정할 수 없도록하고 싶습니다. 나는 그것이

files/myimg.jpg 

어쨌든 될 원하는대로

files/zip/myimg.jpg 

를 예를 들어 나는 "myimg.jpg"나는 그것의 위치가됩니다 압축을 풉니 다 포함 "zip.pdf"라는 우편을 업로드하는 경우 ZipArchive가 압축 해제 된 내용을 저장할 새 디렉토리를 만들지 않거나 압축 해제 된 모든 파일을 반복해야하고 압축 해제가 완료되면 이동하는 방법이 있는지 궁금합니다.

답변

2

가장 안전한 방법은 Zip 내용을 셔플하고 각 파일을 개별적으로 처리하는 것입니다. 즉, 고유 한 임시 디렉토리로 압축을 풀고 각 파일을보고 결정하십시오. 다른 사용자의 파일이 충돌하는 경우에는 어떻게해야합니까? 이것이 맹목적으로 일어나지 않게하십시오.

+0

클라이언트를위한 CMS를 구동하는 매우 간단한 zip입니다. 충돌이 발생하는 경우 새로운 업로드가 이전 파일 집합을 완전히 대체하게하는 것이 목표입니다. 우리는 클라이언트가 특정 zip 파일 이름을 사용하지 못하도록 막으려하고 있습니다. – rcooper102

관련 문제