DOMPDF с кодификатором

Я пытаюсь заставить dompdf работать с codeigniter, я скачиваю файл отсюдаhttps://github.com/dompdf/dompdf/releases версия была 0.7.0, а затем я вставил в свой контроллер кусок кода, как это

public function generatepdf(){

        $this->load->helper('file');
        require_once(APPPATH.'third_party/dompdf/autoload.inc.php');

         $domdpf = new DOMPDF();
         $domdpf -> loadHtml('<h1>HELLO WORLD</h1>');
         $domdpf -> setPaper('A4','Landscape');
         $domdpf ->render();

         $domdpf->stream();


    }

Но я получаю сообщение об ошибкеFatal error: Class 'DOMPDF' not found in C:\Apache24\htdocs\faceloan\faceloan\application\controllers\moneyexchange.php on line 2495

 XAF15 июн. 2016 г., 11:35
@Gopal Я пытался, что не работает
 Gopalakrishnan15 июн. 2016 г., 11:34
Этот поможет вамstackoverflow.com/questions/24497216/...

Ответы на вопрос(5)

1)Скачать библиотеку domPDF и поместите ее в каталог application / library.

2) Создать имя файлаpdf.php файл, поместите следующий код в файл и поместите его в каталог библиотеки.

<?php defined('BASEPATH') OR exit('No direct script access allowed');
 /**


* CodeIgniter PDF Library
 *
 * Generate PDF's in your CodeIgniter applications.
 *
 * @package         CodeIgniter
 * @subpackage      Libraries
 * @category        Libraries
 * @author          Chris Harvey
 * @license         MIT License
 * @link            https://github.com/chrisnharvey/CodeIgniter-PDF-Generator-Library



*/

require_once(dirname(__FILE__) . '/dompdf/dompdf_config.inc.php');

class Pdf extends DOMPDF
{
    /**
     * 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);
    }
}
?>

Теперь в вашемконтроллер файл называть это так

defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
 function my_DOMPDF(){
  $this->load->library('pdf');
  $this->pdf->load_view('common/template');
  $this->pdf->render();
  $this->pdf->stream("welcome.pdf");
 }
}

Вы можете получить полныйпошаговые настройки здесь

@Zedd Ответ правильный

но для последней версии на эту дату поста будет работать следующее.

применение / библиотеки / Pdf.php

<?php defined('BASEPATH') OR exit('No direct script access allowed');
/**


* CodeIgniter PDF Library
 *
 * Generate PDF's in your CodeIgniter applications.
 *
 * @package         CodeIgniter
 * @subpackage      Libraries
 * @category        Libraries
 * @author          Chris Harvey
 * @license         MIT License
 * @link            https://github.com/chrisnharvey/CodeIgniter-  PDF-Generator-Library



*/

require_once APPPATH.'third_party/dompdf/autoload.inc.php';

use Dompdf\Dompdf;
class Pdf extends DOMPDF
{
/**
 * 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())
{
    $dompdf = new Dompdf();
    $html = $this->ci()->load->view($view, $data, TRUE);

    $dompdf->loadHtml($html);

    // (Optional) Setup the paper size and orientation
    $dompdf->setPaper('A4', 'landscape');

    // Render the HTML as PDF
    $dompdf->render();
    $time = time();

    // Output the generated PDF to Browser
    $dompdf->stream("welcome-". $time);
}
}

На вашем контроллере

function pdf_gen(){

    $this->load->library('pdf');
    $this->pdf->load_view('main_report');
}

Очевидно, что main_report является файлом представления в application / views / main_report, и вы также можете отправлять данные для файла представления, как показано ниже

$this->pdf->load_view('main_report', $data);

И примечание

Я поместил папку dompdf в папку application / thirdparty, а не в приложение / библиотеки.

Убедитесь, что вы закомментировали все функции print, echo в вашем методе контроллера, иначе вы можете получить сообщение об ошибке, похожее на «файл PDF поврежден».

Надеюсь, этот пост был полезным.

Начиная с версии 0.7 вы должны включить в свой код ссылку на пространство имен dompdfs:

use Dompdf\Dompdf;
 XAF15 июн. 2016 г., 11:50
если я напишу это, я получу ошибку
 XAF15 июн. 2016 г., 11:50
Я получаю ошибку разбора
 Tpojka15 июн. 2016 г., 18:46
С композитором это лучший путь. @Farhana Какая у тебя ошибка?
Решение Вопроса

Вам нужно использовать v0.6. v0.7 использует пространства имен, которые не поддерживаются в CodeIgniter.

 XAF15 июн. 2016 г., 13:56
все будет хорошо, если я использую 0.6.2?
 Efekan15 июн. 2016 г., 14:57
Да это будет хорошо
require_once(dirname(__FILE__) . '/dompdf/autoload.inc.php');
use Dompdf\Dompdf;

class Pdf
{
 public function create($html,$filename)
 {
   $dompdf = new Dompdf();
   $dompdf->loadHtml($html);
   $dompdf->render();
   $dompdf->stream($filename.'.pdf');
 }

Попробуйте эту библиотекуhttps://github.com/hanzzame/ci3-pdf-generator-library

Эта библиотека с использованием

Dompdf 0.8.0Codeigniter 3.x.xПоддержка SSL-соединения для изображения

Ваш ответ на вопрос