Paano Gumamit ng PHP na Puwersa ng Pag-download ng File

Kapag iniisip mo ito, ang mga web browser ay kamangha-manghang mga pakiramdam ng kumplikadong programming. Ang mga ito ay mga tool na bahagi ng aming pang-araw-araw na buhay - ginagamit para sa lahat ng bagay mula sa pagsuri sa kalagayan ng mga kaibigan at pamilya, sa pakikipag-usap sa mga taong iyon, sa paggawa ng mga pagbili, sa panonood ng mga video, sa pangangalaga sa aming mga buhay sa pananalapi, at kaya higit pa. Bilang karaniwan sa mga browser ay nasa ating buhay, ang katotohanan ay ang karamihan sa mga tao ay hindi pinahahalagahan kung gaano sila kapaki-pakinabang.

Sa likod ng kamera

Ang isang bagay na ginagawa ng mga browser sa likod ng mga eksena ay sinisikap na gawin ang lahat ng mga pag-click na ginagawa ng isang tao sa sesyon ng pagba-browse ay talagang gumagawa ng isang bagay. Ito ay nangangahulugan na ang higit pa at higit pang mga uri ng file ay maaaring mabuksan para sa direktang pagtingin sa mga web browser.

Karamihan sa mga oras, ito ay isang magandang bagay, dahil maaari itong maging lubhang nakakabigo upang mag-click sa isang link sa isang dokumento na nais mong basahin at pagkatapos ay maghintay para sa mga ito upang i-download at sa wakas ay buksan sa iyong computer. Na ang pagkabigo ay umabot sa susunod na antas kapag naghihintay ka para sa pag-download na ito, tanging upang matuklasan na wala kang tamang programa upang buksan ang dokumento. Ang mga araw na ito, na bihirang mangyari dahil ginagawa ng mga browser, sa katunayan, ay nagpapakita nang direkta sa dokumento. Halimbawa, ang mga PDF file ay hindi nai-download nang default. Sa halip, direktang nagpapakita ang mga ito sa web browser katulad ng kung paano ipapakita ang isang web page.

Paano kung mayroon kang isang file na gusto mong i-download ng mga tao sa halip na tinitingnan ito nang direkta sa web browser?

Kung ito ay isang HTML na file o isang PDF , hindi ka makakapag-post ng isang link sa dokumentong iyon dahil (tulad lamang namin na sakop) binubuksan ng isang web browser ang mga dokumentong iyon at ipinapakita ang mga ito sa inline. Upang ma-download ang mga file na ito sa computer ng isang tao, kailangan mo munang gawin ang ilang panlilinlang gamit ang PHP.

Pinapayagan ka ng PHP na baguhin ang mga header ng HTTP ng mga file na iyong sinulat.

Ginagawa ito ng prosesong ito upang maaari mong pilitin ang isang file na ma-download na karaniwan ay ang pag-load ng browser sa parehong window. Perpekto ito para sa mga file tulad ng mga PDF, mga file ng dokumento, mga larawan, at mga video na nais mong i-download ng iyong mga customer sa halip na kumonsumo nang direkta sa online mula sa browser.

Kakailanganin mo ng PHP sa web server kung saan ang iyong mga file ay mai-host, isang file na ma-download, at ang uri ng MIME ng file na pinag-uusapan.

Paano Ito Gawin

  1. Mag-upload ng file na nais mong gawing available para ma-download sa iyong web server. Halimbawa, sabihin mayroon kang isang PDF file na nais mong i-download ng mga tao kapag nag-click sa isang link. Gusto mo munang i-upload ang file na iyon sa hosting environment ng iyong website.
    huge_document.pdf
  2. Mag-edit ng bagong PHP file sa iyong web editor - para sa kadalian ng paggamit, inirerekumenda naming ipangalan ang parehong pangalan bilang iyong na-download na file, lamang sa extension .php. Halimbawa:
    malaking_document.php
  3. Buksan ang bloke ng PHP sa iyong dokumento:
  4. Sa susunod na linya, itakda ang header ng HTTP:
    header ("Content-disposisyon: attachment; filename = malaking_document.pdf");
  5. Pagkatapos ay itakda ang uri ng MIME ng file:
    header ("Uri ng nilalaman: application / pdf");
  6. Ituro ang file na nais mong i-download:
    readfile ("huge_document.pdf");
  7. Pagkatapos isara ang block ng PHP at i-save ang file:
    ?>
  1. Ang iyong PHP file ay dapat magmukhang ganito:
    header ("Content-disposisyon: attachment; filename = malaking_document.pdf");
    header ("Uri ng nilalaman: application / pdf");
    readfile ("huge_document.pdf");
    ?>
  2. Mag-link sa iyong PHP file bilang isang link sa pag-download mula sa isang webpage. Halimbawa:
    I-download ang aking malaking dokumento (PDF)

Dapat ay walang mga puwang o karwahe na babalik sa kahit saan sa file (maliban pagkatapos ng isang semi-colon). Ang mga blangkong linya ay magiging sanhi ng default ng PHP sa uri ng teksto ng MIME / html at hindi mai-download ang iyong file.