Instalar mPDF sem Composer no servidor – פּדף ריפּאָרץ מיט פפּ

מפּדף דזשענערייץ פּדף פֿון CSS / HTML מיט אַ נידעריק לערנען ויסבייג. A ideia aqui é fazer o mPDF funcionar sem precisar instalar o composer no servidor. Será utilizado o composer localmente e enviado posteriormente ao servidor.

ATTENTION: Se você não quer instalar o composer de forma alguma, este tutorial não é para você. Neste post será utilizado o composer localmente e posteriormente enviado para o servidor, sem instalação.

הקדמה

Hoje em dia já não me vejo programando sem usar o Composer. Ele te permite gerenciar de forma consistente inúmeros módulos/scripts criados por terceiros e que estão disponíveis em https://packagist.org/.

Com o Composer você pode não apenas instalar e atualizar pacotes facilmente, mas também manter sincronizado automaticamente quaisquer dependências com outros pacotes utilizados na aplicação. דערצו, já tem prontinho o autoload, permitindo carregar suas classes PHP sem necessidade de fazer include/require.

Mas este não é um Post sobre Composer :P Vamos ver como instalar e executar o mPDF, uma biblioteca PHP para gerar PDF utilizando-se de código HTML. O mPDF tem lá seus contras, mas o interessante é que você basicamente precisa apenas montar seu HTML e com mínimo esforço já terá condições de convertê-lo para PDF.

פּראָבלעם

Ao que parece, nas novas versões, é preciso do Composer para instalar o mPDF. דעריבער, o recomendado é que você de fato passe a usar o Composer em sua atividade de desenvolvimento.

Daí vem a pergunta: e se eu não tiver como instalar o Composer no servidor? אין דעם פאַל, vamos utilizar de uma artifício: instalar o Composer localmente e então subir (upload) para o Servidor a pastaVendor“. Nestas condições seu Composer vai ficar parcialmente inoperante, mas ainda assim vai tornar possível o uso do mPDF.

באַשייד

Como foi dito no início, a ideia é fazer o mPDF funcionar no servidor sem que seja preciso instalá-lo no Servidor. פֿאַר דעם, faremos uma instalação local do composer, e então enviaremos para o servidor.

A instalação do mPDF pelo Composer é muito simples. Vá ao site https://getcomposer.org/download/, baixe e instale o Composer.

Uma vez que tenha o Composer instalado, basta abrir o Terminal (command) e acessar o diretório da sua aplicação (dentro de www/ ou htdocs/, לעמאָשל), e então rodar o seguinte comando:

$ קאָמפּאָזיטאָר require mpdf/mpdf

Note que na raiz do diretório da sua aplicação será criado uns arquivos, ווי composer.json און composer.lock, bem como o diretórioVendor/“. Agora ficou fácil! Você já tem tudo que precisa para seu mPDF funcionar.

Pegue a pasta Vendor e envie para o seu Servidor. De preferência, coloque-a na raiz e crie um arquivo index.php (também na raiz) para testarmos o mPDF contendo o seguinte código:

1
2
3
4
5
<?PHP
require_once __DIR__ . '/vendor/autoload.php';
$mpdf = נייַ mPDF();
$mpdf->WriteHTML('<h1>Hello world!</h1>');
$mpdf->Output();

געטאן דעם, se tudo der certo, irá aparecer um PDF escritoHello World!“.

פּדף ריפּאָרץ מיט פפּ

Relatório não é a finalidade deste Post, mas aproveito para registrar algo mais. Se você precisa gerar relatórios, uma opção é embutir seu CSS/HTML no arquivo PHP e então passar o código para o mPDF fazer o trabalho duro, assim por exemplo (Ver saída na Figura 1 abaixo):

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
<?PHP
require_once __DIR__ . '/vendor/autoload.php';
ob_start();
?>
<סטיל>
    טיש, טה, טד {
        border: 1px solid black;
        border-collapse: collapse;
        padding: 5px;
    }               
    table tr:ענט-קינד(מאָדנע) {
      הינטערגרונט-קאָליר: #eee;
    }  
    table tr:ענט-קינד(אַפֿילו) {
      הינטערגרונט-קאָליר: #פפף;
    }   
    table thead th {
      הינטערגרונט-קאָליר: #קקק;
    } 
    table tfoot td {
      הינטערגרונט-קאָליר: #קקק;
    } 
</סטיל> 
<h1>Meu Relatório</h1>
<table align="center">
    <טהעאַד>
        <טר>
            <טה>נאָמען</טה>
            <טה>עלטער</טה>
            <טה>E- פּאָסט</טה>
        </טר>
    </טהעאַד>
    <tfoot>
        <טר>
            <td colspan="3" align="center">Copyright ® 2017</טד>
        </טר>
    </tfoot>>    
    <טבאָדי>
        <טר>
            <טד>טיילער</טד>
            <td align="center">43</טד>
            <טד >taylor@amail.com</טד>
        </טר>
        <טר>
            <טד>Portela</טד>
            <td align="center">47</טד>
            <טד>portela@bmail.com</טד>
        </טר>        
    </טבאָדי>
</טיש>
<?PHP
$HTML = ob_get_contents();
$mpdf = נייַ mPDF;
$mpdf->WriteHTML($HTML);
$mpdf->Output();

Fig. 1 – Arquivo PDF de saída referente à injeção de código CSS/HTML (acima) processado pelo mPDF

Obviamente você pode estruturar melhor o código colocando o CSS/HTML em um arquivo de template separado e carregá-lo para dentro da chamada do mPDF.

Enfim, agora é com você! Dê uma lida no Manual do mPDF e fique por dentro da forma de uso e compatibilidades.

גאַנץ אַקסעססעס: 18948

Um comentário sobreInstalar mPDF sem Composer no servidor – פּדף ריפּאָרץ מיט פפּ

לאָזן אַ ענטפֿערן

אייער בליצפּאָסט אַדרעס וועט ניט זיין ארויס. Required fields זענען אנגעצייכנט מיט *