How to convert images to PDF from uploaded files for image to PDF API in PHP using PDF.co Web API

Learn how to convert images to PDF from uploaded files to have image to PDF API in PHP

ByteScout tutorials explain the code material for beginners and advanced programmers who are using PHP. PDF.co Web API helps with image to PDF API in PHP. PDF.co Web API is the Rest API that provides set of data extraction functions, tools for documents manipulation, splitting and merging of pdf files. Includes built-in OCR, images recognition, can generate and read barcodes from images, scans and pdf.

Fast application programming interfaces of PDF.co Web API for PHP plus the instruction and the code below will help to learn how to convert images to PDF from uploaded files. For implimentation of this functionality, please copy and paste code below into your app using code editor. Then compile and run your app. Use of PDF.co Web API in PHP is also explained in the documentation included along with the product.

Our website provides free trial version of PDF.co Web API that includes source code samples to help with your PHP project.

Try PDF.co Web API today:  60 Day Free Trial (on-premise) or  Web API (on-demand version)

image-to-pdf.php
      
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Image To PDF Conversion Results</title> </head> <body> <?php // Get submitted form data $apiKey = $_POST["apiKey"]; // The authentication key (API Key). Get your own by registering at https://app.pdf.co/documentation/api // 1. UPLOAD FILES TO CLOUD // If you already have direct file links, skip to Step 2. $uploadedFiles = array(); $fileCount = count($_FILES["files"]["name"]); if (!file_exists("./uploads")) { mkdir("./uploads"); } for($i = 0; $i < $fileCount; $i++) { // 1a. RETRIEVE THE PRESIGNED URL TO UPLOAD THE FILE. // Create URL $url = "https://api.pdf.co/v1/file/upload/get-presigned-url" . "?name=" . $_FILES["files"]["name"][$i] . "&contenttype=application/octet-stream"; // Create request $curl = curl_init(); curl_setopt($curl, CURLOPT_HTTPHEADER, array("x-api-key: " . $apiKey)); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // Execute request $result = curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $json = json_decode($result, true); // Get URL to use for the file upload $uploadFileUrl = $json["presignedUrl"]; // Get URL of uploaded file to use with later API calls $uploadedFileUrl = $json["url"]; // 1b. UPLOAD THE FILE TO CLOUD. $tmpFilePath = $_FILES["files"]["tmp_name"][$i]; $localFile = "./uploads/" . $_FILES["files"]['name'][$i]; move_uploaded_file($tmpFilePath, $localFile); $fileHandle = fopen($localFile, "r"); curl_setopt($curl, CURLOPT_URL, $uploadFileUrl); curl_setopt($curl, CURLOPT_HTTPHEADER, array("content-type: application/octet-stream")); curl_setopt($curl, CURLOPT_PUT, true); curl_setopt($curl, CURLOPT_INFILE, $fileHandle); curl_setopt($curl, CURLOPT_INFILESIZE, filesize($localFile)); // Execute request curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $uploadedFiles[] = $uploadedFileUrl; } else { // Display request error echo "<p>Status code: " . $status_code . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "Error: " . curl_error($curl); } fclose($fileHandle); } else { // Display request error echo "<p>Status code: " . $status_code . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "Error: " . curl_error($curl); } curl_close($curl); } // 2. CREATE PDF DOCUMENT FROM UPLOADED IMAGE FILES if (count($uploadedFiles) > 0) { ImageToPdf($apiKey, $uploadedFiles); } function ImageToPdf($apiKey, $uploadedFiles) { // Create URL $url = "https://api.pdf.co/v1/pdf/convert/from/image" . "?name=result.pdf" . "&url=" . join(",", $uploadedFiles); // Create request $curl = curl_init(); curl_setopt($curl, CURLOPT_HTTPHEADER, array("x-api-key: " . $apiKey)); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // Execute request $result = curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $json = json_decode($result, true); if ($json["error"] == false) { $resultFileUrl = $json["url"]; // Display link to the file with conversion results echo "<div><h2>Conversion Result:</h2><a href='" . $resultFileUrl . "' target='_blank'>" . $resultFileUrl . "</a></div>"; } else { // Display service reported error echo "<p>Error: " . $json["message"] . "</p>"; } } else { // Display request error echo "<p>Status code: " . $status_code . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "Error: " . curl_error($curl); } // Cleanup curl_close($curl); } ?> </body> </html>

Try PDF.co Web API today:  60 Day Free Trial (on-premise) or  Web API (on-demand version)

VIDEO

ON-PREMISE VERSION INFORMATION

Get 60 Day Free Trial or Visit PDF.co Web API Home Page

Explore PDF.co Web API Documentation

Get PDF.co Web API Free Training

WEB API

Get Your Free API Key

Explore Web API Documentation

Related Samples: