2010-04-30 2 views
5

이 클래스가 내장 된 PHP 버전에 궁금한 점이 많습니다. 그리고 모든 플랫폼 (OS)에 내장되어 있다면. 나는 접근을 ZIP 파일을 통해 검색하고 파일을 file_put_contents을 사용하여 웹 루트 내의 다른 파일 경로에 배치하고자합니다. 어떤 경우에, 나는 ZipArchive 클래스로 이것을하는 방법에 익숙하지만,이 클래스를 사용하면 모든 솔루션이 좋고 MOST가 아닌지 궁금하다. 내 말은, 서버를 설치해야하는 방법을 사용하지 않을 것입니다. 내가 ... 클래스를 설치하지 않고 적어도 대부분의 서버를 지원하는이에 대한 해결책을ZipArchive php Class - PHP에 내장되어 있습니까?

감사합니다 :) 또한

을 찾고 있어요, 내가 오프닝 tar.gz의를 지원하고 싶습니다 및/가능하다면 .tgz 파일을 열지 만 ZipArchive 클래스가 이것을 지원한다고 생각하지는 않지만 아마도 다른 내장 PHP 클래스가있을 것입니다. ??

+0

"서버 내의 다른 영역에 있음"- 의미하는 경우 webroot 밖에서 이것은 아마도 많은 컴퓨터에서 실행되지 않을 것입니다 ... – tadamson

+0

아니요, 웹 루트의 뜻은 아닙니다 ... – SoLoGHoST

답변

9

타르 (Tar) 지원은 PHP에 내장되어 있지 않지만 PEAR 라이브러리를 보면 타볼 생성/추출을 지원하는 클래스를 찾을 수 있습니다. http://pear.php.net/package/Archive_Tar 또는 http://pear.php.net/package/File_Archive을보십시오. 마지막 것은 여러 보관 형식 (ZIP 및 TAR 포함)에 대한 일반 인터페이스 여야합니다.

ZIP 지원이 내장되어 있는지 여부는 다를 수 있지만 대부분의 패키지 작성자는이를 포함 할 것입니다. 그런 다음 다시 ZipArchive 클래스가 있는지 확인하여 언제든지 class_exists('ZipArchive');을 호출하고 멋진 오류 메시지를 표시하거나보다 일반적인 접근 방식으로 넘어갑니다.

+0

그래, 고마워. 모든 버전의 PHP 또는 PHP의 MOST 버전을 만족시킬 수있는 일반적인 접근 방식. – SoLoGHoST

+0

글쎄, 프로젝트에서 PEAR 클래스를 사용한다면 (프로젝트에 이들 클래스를 포함 할 수있다.) PHP의 대부분의 버전에서 작동 할 수있는 일반적인 접근법이있다. 그냥 tarball을 다운로드하고 압축을 풀고 파일을 경로의 어딘가에 넣으십시오 ... – wimvds

관련 문제