7 febrero, 2020
Sin categoría

php 여러 파일 다운로드

PDF 또는 이미지 파일을 가리키는 링크를 클릭하면 하드 드라이브에 직접 다운로드되지 않습니다. 브라우저에서만 파일이 열립니다. 또한 하드 드라이브에 저장할 수 있습니다. 그러나 zip 및 exe 파일은 기본적으로 하드 드라이브에 자동으로 다운로드됩니다. ZipArchive는 zip 파일로 작업하는 데 사용되는 PHP 클래스입니다. PHP 설정에서 zip 확장이 활성화되어 있는지 확인합니다. readfile())은 대용량 파일을 자체적으로 전송하는 경우에도 메모리 문제가 나타나지 않습니다. 메모리 부족 오류가 발생하면 출력 버퍼링이 ob_get_level()로 꺼져 있는지 확인합니다. 파일을 선택하지 않으면 서버 측 유효성 검사 오류 메시지가 반환됩니다. 오류 및 성공 응답은 사용자에게 적절한 승인을 표시하는 데 사용됩니다.

이것은 참으로 나를 위해 매우 도움이됩니다. 나는 또한 비슷한 튜토리얼을 썼다, 난 당신이 또한 좋은 찾을 수 있기를 바랍니다. https://www.allphptricks.com/create-a-zip-file-using-php-and-download-multiple-files/ 데모 페이지에서는 SELECT 메뉴에서 파일을 표시하는 파일 업로드 및 다운로드 및 PHP 디렉터리 기능에 대한 PHP 코드 예제를 보여 줍니다. 위에 정의된 함수 createZip()는 디렉터리 경로를 매개 변수로 허용합니다. 경로에서 모든 파일과 폴더를 읽고 zip 파일에 추가합니다. FileGator는 파일 및 폴더를 관리하기위한 무료 오픈 소스 PHP 스크립트입니다. 위의 예제(줄 no-8)의 정규식은 이름이 점 문자로 시작되거나 끝나는 파일을 허용하지 않습니다(예: kites.jpg 또는 Kites.jpg, myscript.min.js)와 같은 파일 이름을 허용하지만 kites.jpg는 허용하지 않습니다. 또는 .kites.jpg. 마찬가지로 워드 문서, PDF 파일 등과 같은 다른 파일 형식을 강제로 다운로드 할 수 있습니다. 데모에서는 지정된 디렉토리에서 모든 파일과 폴더를 읽고 ZipArchive 클래스 개체에 추가하는 함수를 만듭니다. 로컬 리포지토리 폴더(서버의 하드 드라이브)에서 파일을 관리하거나 다른 저장소 어댑터에 연결할 수 있습니다(아래 참조).

JSZip은 zip 파일을 만들고 읽고 편집하는 데 도움이되는 자바 스크립트 라이브러리입니다. 라이브러리 API 개체의 도움으로 zip 파일 아카이브를 빌드합니다. 그런 다음 생성된 zip 파일을 저장하기 위해 zip 대상 폴더를 프로그래밍하여 만듭니다. 미리 컴파일된 빌드는 개발자가 아닌 경우 만들어집니다. 이 버전에서는 프런트 엔드 (html, CSS 및 자바 스크립트)가 컴파일되고 소스 코드가 제거되므로 최종 아카이브에는 최소 파일만 포함됩니다. 이 예제를 사용하여 zip 파일을 만들어 동시에 여러 파일을 다운로드 할 수 있으며 PHP의 ZIP 클래스의 도움으로 zip에서 다운로드 파일을 추가하기만 하면됩니다. 우리는 여러 파일의 업로드를 용이하게하기 위해 HTML 양식을해야합니다. 그런 다음 성공적으로 업로드하면 해당 파일이 PHP를 사용하여 단일 파일로 압축됩니다.

그것을 통해 걸어 보자. zip 파일을 만든 후 사용자가 업로드한 파일이 zip 아카이브로 이동됩니다. 이 코드에서 업로드된 파일도 지정된 대로 대상 폴더로 이동됩니다. 이러한 모든 구현은 이 예제의 아래 간단한 파일 구조로 수행할 수 있습니다. 이 이미지에 표시된 최소 파일 수는 이 예제의 단순성입니다. 이 예제에서는 사용자가 HTML 양식을 통해 여러 파일을 선택하고 업로드할 수 있습니다. 파일 데이터는 PHP에 게시되고 PHP ZipArchive 클래스를 사용하여 ZIP 형식으로 압축됩니다. Zip 파일 생성을 위해 ZipArchive 클래스 개체를 만듭니다. 지정된 디렉터리 경로에서 파일 및 디렉터리를 읽을 수 있는 함수 createZip()을 정의합니다. FileGator에는 다중 사용자 지원이 있으므로 관리자와 다른 사용자가 다른 액세스 권한, 역할 및 홈 폴더가 있는 파일을 관리하도록 할 수 있습니다.

PHP ZipArchive 클래스는 파일 이름, 파일 수, 주석 및 파일 아카이브에 대한 더 많은 속성을 설정할 수 있습니다. AJAX와 jQuery를 사용하여 수행하는 한 가지 방법은 모든 파일을 준비하고 각 파일에 고유 ID가있는 세션에 넣는 것입니다. ajax 호출의 반환은 아이디 목록이 있는 JavaScript호출입니다. 그것은 zip 파일 디렉토리를 만들고, zip 아카이브에 파일을 추가하고, 빈 디렉토리 등을 만드는 방법이 포함되어 있습니다.