Gerando vários arquivos com PHP usando MPDF
Publicado por Cláudio Souza Jr. (última atualização em 03/03/2017)
[ Hits: 7.543 ]
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>';
}
}
Orion - extração e conversão de dados de arquivos texto e CSV
Mural de recados com arquivo de log
Manipulação de Arquivos XML para OT Server
Gerando um arquivo randômico com PHP
Nenhum comentário foi encontrado.
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Instalar Dual Boot, Linux+Windows. (5)
Conky, alerta de temperatura alta (16)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









