Gerando vários arquivos com PHP usando MPDF
Publicado por Cláudio Souza Jr. (última atualização em 03/03/2017)
[ Hits: 7.526 ]
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>';
}
}
Classe em php para listar subdiretórios e arquivos em html
Gerando arquivo PDF com PHP usando mPDF
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Quais os códigos mais dificeis que vcs sabem fazer? (11)
systemd-resol... precisa ser reiniciado periodicamente [RESOLVIDO] (7)









