The implementation method of php downloading pdf and transferring it locally: first create the html page code and script.js code; then create the PHP code to read the pdf file locally; finally introduce the jquery library file for remote downloading. Can.
The operating environment of this article: Windows 7 system, PHP version 7.1, DELL G3 computer
PHP ajax remotely downloads PDF files and saves them on the local server
Sometimes we want to save some PDF files using ajax, especially if they are placed on a remote server and stored on our own server. At this time we need to write a program to help us complete this Work, this article introduces PHP to remotely download PDF files and save them on the local server. Friends who need it can refer to the following:
html page code is as follows:
script. The js code is as follows:
$(function() { $("button").click(function() { $.ajax({ url: "http://lch.bat.com/aa.pdf", type: "GET", dataType: 'binary', success: function(result) { var blob = new Blob([result], {type:"application/pdf"}); var data = new FormData(); data.append('file', blob); $.ajax({ type: 'POST', url: 'http://lch.demo.com/read.php', data: data, processData: false, contentType: false, success: function (arg) { alert('下载成功'); } }) } }); }); });
jquery.binarytransport.js code is as follows:
/** * * jquery.binarytransport.js * * @description. jQuery ajax transport for making binary data type requests. * @version 1.0 * */ // use this transport for "binary" data type $.ajaxTransport("+binary", function(options, originalOptions, jqXHR){ // check for conditions and support for blob / arraybuffer response type if (window.FormData && ((options.dataType && (options.dataType == 'binary')) || (options.data && ((window.ArrayBuffer && options.data instanceof ArrayBuffer) || (window.Blob && options.data instanceof Blob))))) { return { // create new XMLHttpRequest send: function(_, callback){ // setup all variables var xhr = new XMLHttpRequest(), url = options.url, type = options.type, // blob or arraybuffer. Default is blob dataType = options.responseType || "blob", data = options.data || null; xhr.addEventListener('load', function(){ var data = {}; data[options.dataType] = xhr.response; // make callback and send data callback(xhr.status, xhr.statusText, data, xhr.getAllResponseHeaders()); }); xhr.open(type, url, true); xhr.responseType = dataType; xhr.send(data); }, abort: function(){ jqXHR.abort(); } }; } });
Let’s take a look at my local code for reading pdf files:
Copy after login
Finally, put the jquery library After the file is imported and downloaded remotely, it can be opened locally and the content of the original file will be exactly the same without garbled characters.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of How to download pdf in php and save it locally. For more information, please follow other related articles on the PHP Chinese website!