![How To Generate Pdf In Codeigniter Using MPDF Library](http://xpertphp.com/wp-content/uploads/2018/06/How-To-Generate-Pdf-In-Codeigniter-Using-MPDF-Library.png)
How to generate pdf in Codeigniter using MPDF Library
In this article, we will discuss How to generate pdf in Codeigniter using the mPDF library. There are many packages available but mPDF package through we can easily generate the pdf file.
Why do we need to pdf file? when we need to generate the invoice, booking ticket generate, large data convert into pdf invoice and many more things. in case we need to pdf file.
There are many packages available but mPDF Library package through we can easily generate pdf in Codeigniter using the mPDF library.
Download and install Codeigniter
We are going to install Codeigniter 3, first, we will download a fresh Codeigniter 3 version and install it in our system. so you can follow below Link for Download CodeIgniter.
Download Mpdf Library
Now, We will Download the Mpdf package Library using the below composer command.
1 | composer require mpdf/mpdf |
Configurations of a vendor directory path
In this step, We will set the vendor directory path in the “application/config/config.php” file. so you can see the below code.
1 | $config['composer_autoload'] = 'vendor/autoload.php'; |
Create Controller
In this step, we will create a Mypdf.php file in the “application/controller” directory and paste the below code in this controller.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Mypdf extends CI_Controller { public function index() { $mpdf = new \Mpdf\Mpdf(); $html = $this->load->view('welcome_message',[],true); $mpdf->WriteHTML($html); $mpdf->Output(); // opens in browser //$mpdf->Output('welcome.pdf','D'); // it downloads the file into the user system. } } |
Create View File
So finally, we can create another file in and pass some data from the database to the “application/views/” directory. but here we are using simple files like “application/views/welcome_message.php”.
application/views/welcome_message.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | <?php defined('BASEPATH') OR exit('No direct script access allowed'); ?><!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Welcome to CodeIgniter</title> <style type="text/css"> ::selection { background-color: #E13300; color: white; } ::-moz-selection { background-color: #E13300; color: white; } body { background-color: #fff; margin: 40px; font: 13px/20px normal Helvetica, Arial, sans-serif; color: #4F5155; } a { color: #003399; background-color: transparent; font-weight: normal; } h1 { color: #444; background-color: transparent; border-bottom: 1px solid #D0D0D0; font-size: 19px; font-weight: normal; margin: 0 0 14px 0; padding: 14px 15px 10px 15px; } code { font-family: Consolas, Monaco, Courier New, Courier, monospace; font-size: 12px; background-color: #f9f9f9; border: 1px solid #D0D0D0; color: #002166; display: block; margin: 14px 0 14px 0; padding: 12px 10px 12px 10px; } #body { margin: 0 15px 0 15px; } p.footer { text-align: right; font-size: 11px; border-top: 1px solid #D0D0D0; line-height: 32px; padding: 0 10px 0 10px; margin: 20px 0 0 0; } #container { margin: 10px; border: 1px solid #D0D0D0; box-shadow: 0 0 8px #D0D0D0; } </style> </head> <body> <div id="container"> <h1>Welcome to CodeIgniter!</h1> <div id="body"> <p>The page you are looking at is being generated dynamically by CodeIgniter.</p> <p>If you would like to edit this page you'll find it located at:</p> <code>application/views/welcome_message.php</code> <p>The corresponding controller for this page is found at:</p> <code>application/controllers/Welcome.php</code> <p>If you are exploring CodeIgniter for the very first time, you should start by reading the <a href="user_guide/">User Guide</a>.</p> </div> <p class="footer">Page rendered in <strong>{elapsed_time}</strong> seconds. <?php echo (ENVIRONMENT === 'development') ? 'CodeIgniter Version <strong>' . CI_VERSION . '</strong>' : '' ?></p> </div> </body> </html> |