Gerando vários arquivos com PHP usando MPDF
Publicado por Cláudio Souza Jr. (última atualização em 03/03/2017)
[ Hits: 7.368 ]
Script que usa os dados de um ARRAY para gerar vários arquivos PDF ao mesmo tempo.
<?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>'; } }
Listar o conteúdo de um diretório
Lendo e escrevendo em arquivos.
Gerar código de barras com barcode + PHP
Nenhum coment�rio foi encontrado.
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Rede wifi com mesmo ip da rede eth (2)
como resolver o problema de som do linux mint mate (3)
Primeiras impressões do Debian 13 (2)