ਸਰਵਰ ਉੱਤੇ ਕੰਪੋਸਰ ਤੋਂ ਬਿਨਾਂ ਐਮਪੀਡੀਐਫ ਸਥਾਪਿਤ ਕਰੋ – ਪੀਐਚਪੀ ਨਾਲ ਪੀ ਡੀ ਐਫ ਰਿਪੋਰਟ

MPDF ਘੱਟ ਸਿੱਖਣ ਵਾਲੀ ਵਕਰ ਦੇ ਨਾਲ CSS / HTML ਤੋਂ PDF ਤਿਆਰ ਕਰਦਾ ਹੈ. ਇੱਥੇ ਵਿਚਾਰ ਐਮਪੀਡੀਐਫ ਨੂੰ ਸਰਵਰ ਤੇ ਕੰਪੋਜ਼ਰ ਸਥਾਪਤ ਕੀਤੇ ਬਿਨਾਂ ਕੰਮ ਕਰਨਾ ਹੈ. ਕੰਪੋਜ਼ਰ ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਏਗਾ ਅਤੇ ਬਾਅਦ ਵਿਚ ਸਰਵਰ ਨੂੰ ਭੇਜਿਆ ਜਾਵੇਗਾ.

ਧਿਆਨ: 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. Além disto, 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. ਦੀ 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 (ਅਪਲੋਡ ਕਰਨ) 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 ਐਮਪੀਡੀਐਫ/ਐਮਪੀਡੀਐਫ

Note que na raiz do diretório da sua aplicação será criado uns arquivos, como composer.jsoncomposer.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
ਜ਼ਰੂਰਤ __DIR__ . '/vendor/autoload.php';
$ਐਮਪੀਡੀਐਫ = ਨਵ mPDF();
$ਐਮਪੀਡੀਐਫ->WriteHTML('<h1>Hello world!</h1>');
$ਐਮਪੀਡੀਐਫ->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
ਜ਼ਰੂਰਤ __DIR__ . '/vendor/autoload.php';
ob_start();
?>
<ਸ਼ੈਲੀ>
    table, th, td {
        border: 1px solid black;
        border-collapse: collapse;
        padding: 5px;
    }               
    table tr:nth-child(odd) {
      background-color: #eee;
    }  
    table tr:nth-child(even) {
      background-color: #fff;
    }   
    table thead th {
      background-color: #ccc;
    } 
    table tfoot td {
      background-color: #ccc;
    } 
</ਸ਼ੈਲੀ> 
<h1>Meu Relatório</h1>
<table align="center">
    <thead>
        <tr>
            <th>ਨਾਮ</th>
            <th>Idade</th>
            <th>ਈ-ਮੇਲ</th>
        </tr>
    </thead>
    <tfoot>
        <tr>
            <td colspan="3" align="center">Copyright ® 2017</td>
        </tr>
    </tfoot>>    
    <tbody>
        <tr>
            <td>ਟੇਲਰ</td>
            <td align="center">43</td>
            <td >taylor@amail.com</td>
        </tr>
        <tr>
            <td>Portela</td>
            <td align="center">47</td>
            <td>portela@bmail.com</td>
        </tr>        
    </tbody>
</table>
<?PHP
$HTML = ob_get_contents();
$ਐਮਪੀਡੀਐਫ = ਨਵ mPDF;
$ਐਮਪੀਡੀਐਫ->WriteHTML($HTML);
$ਐਮਪੀਡੀਐਫ->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.

ਆਖਿਰਕਾਰ, agora é com você! Dê uma lida no Manual do mPDF e fique por dentro da forma de uso e compatibilidades.

ਕੁੱਲ ਐਕਸੈੱਸ: 27821

'ਤੇ ਇੱਕ ਸਮੀਖਿਆ “ਸਰਵਰ ਉੱਤੇ ਕੰਪੋਸਰ ਤੋਂ ਬਿਨਾਂ ਐਮਪੀਡੀਐਫ ਸਥਾਪਿਤ ਕਰੋ – ਪੀਐਚਪੀ ਨਾਲ ਪੀ ਡੀ ਐਫ ਰਿਪੋਰਟ

ਕੋਈ ਜਵਾਬ ਛੱਡਣਾ

ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀ ਕੀਤਾ ਜਾ ਜਾਵੇਗਾ. ਦੀ ਲੋੜ ਹੈ ਖੇਤਰ ਦੇ ਨਾਲ ਮਾਰਕ ਕੀਤੇ ਹਨ, *