PHP를 사용하여 파일 다운로드하기

웹 브라우저 는 복잡한 프로그래밍에 대한 놀라운 업적입니다. 그들은 일상 생활의 일부입니다. 친구 나 가족의 상태를 확인하고, 사람들과 의사 소통하며, 구매하고, 비디오를 보며, 재정적 인 삶을 돌보는 등 모든 일에 사용되는 도구입니다. 더. 브라우저가 우리 삶에 널리 퍼져 있기 때문에 현실은 대부분의 사람들이 그들이 얼마나 유용했는지 알지 못합니다.

무대 뒤에서

배후에서 브라우저가하는 일 중 하나는 브라우징 세션 중에 사람이 수행하는 모든 클릭을 실제로하려고하는 것입니다. 즉, 점점 더 많은 파일 형식을 열어 웹 브라우저에서 직접 볼 수 있습니다.

대부분의 경우이 것은 좋은 일입니다. 읽으려는 문서에 대한 링크를 클릭 한 다음 컴퓨터에서 다운로드하여 마침내 열어야한다는 사실에 매우 실망 할 수 있습니다. 이 다운로드는 사용자가 문서를 열 수있는 적절한 프로그램이 없다는 것을 발견 할 때까지 그 좌절감은 다음 단계에 도달합니다. 요즘은 브라우저가 실제로 문서를 직접 인라인으로 표시하기 때문에 거의 발생하지 않습니다. 예를 들어 PDF 파일은 기본적으로 다운로드되지 않습니다. 대신 웹 페이지가 표시되는 방식과 마찬가지로 웹 브라우저에 직접 표시됩니다.

사람들이 웹 브라우저에서 직접 파일을 보는 대신 다운로드하기를 원하는 파일이 있다면 어떻게해야할까요?

HTML 파일 또는 PDF 인 경우 해당 문서에 대한 링크를 게시 할 수 없습니다 (방금 설명한대로) 웹 브라우저는 해당 문서를 자동으로 열고 인라인으로 표시합니다. 이 파일들을 사람의 컴퓨터에 다운로드하려면 PHP를 사용하여 몇 가지 속임수를 써야합니다.

PHP를 사용하면 작성중인 파일의 HTTP 헤더를 변경할 수 있습니다.

이 프로세스는 브라우저가 일반적으로 동일한 창에서로드하는 파일을 강제로 다운로드 할 수 있도록합니다. PDF, 문서 파일, 이미지 및 비디오와 같은 파일에 적합하며 브라우저에서 온라인으로 직접 다운로드하지 않고 다운로드 할 수 있습니다.

파일을 호스팅 할 웹 서버, 다운로드 할 파일 및 해당 파일의 MIME 유형 에 PHP가 필요합니다.

이 작업 수행 방법

  1. 다운로드 가능한 파일을 웹 서버에 업로드하십시오. 예를 들어 사람들이 링크를 클릭 할 때 다운로드하게하려는 PDF 파일이 있다고 가정 해보십시오. 먼저 해당 파일을 웹 사이트의 호스팅 환경에 업로드합니다.
    huge_document.pdf
  2. 웹 편집기에서 새 PHP 파일 편집 - 사용하기 쉽도록 다운로드 한 파일과 동일한 이름을 지정하고 확장자는 .php로 지정하는 것이 좋습니다. 예 :
    huge_document.php
  3. 문서에서 PHP 블록을 엽니 다.
  4. 다음 줄에서 HTTP 헤더를 설정하십시오.
    header ( "Content-disposition : attachment; filename = huge_document.pdf");
  5. 그런 다음 파일의 MIME 유형을 설정하십시오.
    헤더 ( "Content-type : application / pdf");
  6. 다운로드 할 파일을 가리 킵니다.
    readfile ( "huge_document.pdf");
  7. 그런 다음 PHP 블록을 닫고 파일을 저장하십시오.
    ?>
  1. PHP 파일은 다음과 같아야합니다.
    header ( "Content-disposition : attachment; filename = huge_document.pdf");
    헤더 ( "Content-type : application / pdf");
    readfile ( "huge_document.pdf");
    ?>
  2. 웹 페이지에서 PHP 링크를 다운로드 링크로 연결하십시오. 예 :
    거대한 문서 다운로드 (PDF)

파일 에는 공백이나 캐리지 리턴 이 없어야합니다 (세미콜론 다음 제외). 빈 줄은 PHP가 MIME 유형 text / html로 기본 설정되어 파일을 다운로드하지 못하게합니다.