Gerando vários arquivos com PHP usando MPDF
Publicado por Cláudio Souza Jr. (última atualização em 03/03/2017)
[ Hits: 7.135 ]
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>'; } }
Eliminar Todos os Ficheiros de um Directorio
Script para fazer upload de arquivos
Página de downloads que identifica arquivos por extensão
Lendo e escrevendo em arquivos.
Conversor de arquivo Excel para um Array
Nenhum comentário foi encontrado.
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Não consigo instalar o WineHQ no meu notebook vaio FE15 (Debian) (7)
Montar Partição para usar no Timeshift (8)
Instalação da Imagem ISO do Tails (8)
Não consigo atualizar para LinuxMint 22 com o Mintupdate (7)