blog yang berisi berbagai macam cara ampuh

Cara Menggunakan Dompdf di Codeigniter


Dompdf merupakan salah satu library dari PHP untuk membuat file dengan ekstensi PDF. Cara kerja Dompdf itu mengkonversi dari HTML ke PDF, sehingga lebih praktis.

Selain itu juga, kita bisa menggunakan CSS di dalamnya. Saat ini Dompdf mendukung CSS versi 2.1.

Untuk penggunaan Dompdf di framework Codeigniter, silahkan ikuti langkah-langkah berikut ini. 

1. Aktifkan Autoload Composer

Kita akan menginstal Dompdf melalui Composer. Karena itu, Autoload untuk Composer perlu diaktifkan.

Silahkan buka file application/config/config.php

Kemudian isi bagian Autoload Composer seperti ini:
$config['composer_autoload'] = "vendor/autoload.php";

2. Instal Dompdf

Sebelum masuk ke tahap Instal DomPdf, pastikan anda telah menginstal Composer.

Untuk proses installasi Composer silahkan klik artikel yang telah kami posting sebelumnya.

Lihat disini: Cara Menginstal Composer di Windows

Jika sudah menginstal Composer, selanjutnya kita instal dompdf dengan perintah: 
composer require dompdf/dompdf
Jalankan perintah tersebut di direktori proyek Anda.


3. Membuat Library Sendiri

Agar tidak menulis ulang kode yang sama disetiap penggunaan Dompdf, kita buat saja library  sendiri.

Silahkan buat file baru di direktori application/libraries dengan nama Pdf.php.

Isinya seperti berikut ini:
<?php defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * CodeIgniter DomPDF Library
 *
 * Generate PDF's from HTML in CodeIgniter
 *
 * @packge        CodeIgniter
 * @subpackage        Libraries
 * @category        Libraries
 * @author        Ardianta Pargo
 * @license        MIT License
 * @link        https://github.com/ardianta/codeigniter-dompdf
 */

use Dompdf\Dompdf;
class Pdf extends Dompdf{
    /**
     * PDF filename
     * @var String
     */
    public $filename;
    public function __construct(){
        parent::__construct();
        $this->filename = "laporan.pdf";
    }

    /**
     * Get an instance of CodeIgniter
     *
     * @access    protected
     * @return    void
     */

    protected function ci()
    {
        return get_instance();
    }

    /**
     * Load a CodeIgniter view into domPDF
     *
     * @access    public
     * @param    string    $view The view to load
     * @param    array    $data The view data
     * @return    void
     */

    public function load_view($view, $data = array()){
        $html = $this->ci()->load->view($view, $data, TRUE);
        $this->load_html($html);
        // Render the PDF
        $this->render();
            // Output the generated PDF to Browser
               $this->stream($this->filename, array("Attachment" => false));
    }
}
Kode di atas merupakan class exstends dari class Dompdf. 

4. Membuat Controller

Buat sebuah file Controller baru di dalam application/controller dengan nama Laporan.php untuk menggunakan library yang sudah kita buat tadi.
class Laporan extends CI_Controller {
 
    public function index()
    {
        $data = array(
            "dataku" => array(
                "nama" => "Basecamp Coding",
                "url" => "http://basecampcoding.blogspot.com/"
            )
        );

        $this->load->library('pdf');
        $this->pdf->setPaper('A4', 'potrait');
        $this->pdf->filename = "laporan-PDF.pdf";
        $this->pdf->load_view('laporan_pdf', $data);
    }
} 
File view yang di-load bernama laporan_pdf, berarti kita harus membuat file view bernama laporan_pdf.php di application/views.

5. Membuat View File

Buatlah sebuah view laporan_pdf.php di folder application/views

Isinya seperti berikut ini:
<pre><?php print_r($dataku); ?></pre>

6. Mengatur Routes

Ubahlah default controller pada direktori application/config/routes.php

Kemudian isi bagian Default controller seperti ini: 
$route['default_controller'] = 'laporan';

7. Percobaan


Begitulah cara menggunakan Dompdf di Codeigniter. Selebihnya anda bisa bereksperiman sendiri.

Silahkan download projeknya pada link berikut:

DOWNLOAD SOURCE CODE