Gerando vários arquivos com PHP usando MPDF
Publicado por Cláudio Souza Jr. (última atualização em 03/03/2017)
[ Hits: 7.499 ]
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>';
}
}
Gerar código de barras com barcode + PHP
Nenhum comentário foi encontrado.
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
Adicionar botão "mostrar área de trabalho" no Zorin OS
Como montar um servidor de backup no linux
Trazendo de volta o Serviços em Segundo Plano no Plasma6
É normal não gostar de KDE? (21)
Servidor para arquivos e banco de dados (4)
780 mil usuários do Janelas baIxaram Linux em um mês (4)
Atualizei meu ubuntu e desliguei e ele não inicia corretamente (12)









