Gerando vários arquivos com PHP usando MPDF

Publicado por Cláudio Souza Jr. (última atualização em 03/03/2017)

[ Hits: 7.097 ]

Download 6581.index.php




Script que usa os dados de um ARRAY para gerar vários arquivos PDF ao mesmo tempo.

  



Esconder código-fonte

<?php

require_once '/local_da_biblioteca_mpdf';

# Local de salvamento dos arquivos (precisa de permissão de gravação)
$path = '/var/www/html/mpdf-tmp/';

# Array com os dados para exemplo
# Podem ser extraídos de um banco de dados, por exemplo
$clientes = [];
for ($i = 1; $i <= 5; $i++) {
    $clientes[$i] = [
        'id' => $i,
        'nome' => "Cliente $i",
        'endereco' => "Endereço Completo do Cliente $i",
        'email' => "cliente$i@email.com"
    ];
}

# Definindo cabeçalho, rodapé e numeração de página
$header = '<table><tr><td>Cabeçalho bugado para testar emissão do documento</td></tr></table>';
$footer = '<table><tr><td><b>Page N. {PAGENO}</b></td></tr></table>';

# Criando um arquivo para cada 'cliente'
foreach ($clientes as $cliente){
    $mpdf = new mPDF('c','A4','','',15,15,18,15,10,5);
    $mpdf->mirrorMargins = 1;
    $filepath = $path.$cliente['nome'].'.pdf';
    $dados = $cliente['nome'].', '.$cliente['endereco'];
    $mpdf->SetHTMLHeader($header);
    $mpdf->SetHTMLFooter($footer);
    $mpdf->WriteHTML($dados);
    $mpdf->Output($filepath,'F');
}

# Vasculha o '$path' para mostrar os links p/ os arquivos criados
$types = array('pdf');
$dir = new DirectoryIterator($path);
foreach ($dir as $fileInfo) {
    $ext = strtolower( $fileInfo->getExtension() );
    if( in_array( $ext, $types ) ){
        echo '<a href="/mpdf-tmp/'.$fileInfo->getFilename().'" target="_blank">';
        echo $fileInfo->getFilename().'</a><br>';
    }
}

Scripts recomendados

Apresentar imagens - Aleatorio na Pagina (todos os Formatos)

Eliminar Todos os sub-diretórios de um Diretório

Classe para envio de arquivo - Programação Orientada a Objetos

Eliminar Todos os Ficheiros de um Directorio

Listando arquivos do diretório


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts