PHP code example of douglaszuqueto / laravel-boleto
1. Go to this page and download the library: Download douglaszuqueto/laravel-boleto library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
$boleto->renderPDF();
// ou
$boleto->renderHTML();
// Os dois métodos aceitam como parâmetro dois booleanos.
// 1º Se True, após renderizado, irá mostrar a janela de impressão. O Valor default é false.
// 2º Se False, irá esconder as instruções de impressão. O valor default é true.
$boleto->renderPDF(true, false); // mostra a janela de impressão e esconde as instruções de impressão
/*
* O comportamento padrão para os métodos renderPDF() e renderHTML() é retornar uma string pura.
* Para gerar um retorno no controller do laravel, utilize da seguinte forma:
*/
// PDF
return response($boleto->renderPDF(), 200, [
'Content-Type' => 'application/pdf',
'Content-Disposition' => 'inline; boleto.pdf',
]);
// HTML
return response($boleto->renderHTML());
// Gerar em PDF
$pdf = new Eduardokum\LaravelBoleto\Boleto\Render\Pdf();
$pdf->addBoleto($boleto);
// Ou, para adicionar um array de boletos
$pdf->addBoletos($boletos);
// Quando não informado parâmetros ele se comportará como Pdf::OUTPUT_STANDARD, enviando o buffer do pdf com os headers apropriados.
$pdf->gerarBoleto();
// Para mostrar a janela de impressão no load do PDF
$pdf->showPrint();
// Para remover as intruções de impressão
$pdf->hideInstrucoes();
// O método gerarBoleto() da classe PDF aceita como parâmetro:
// 1º destino: constante com os destinos disponíveis. Ex: Pdf::OUTPUT_SAVE.
// 2º path: caminho absoluto para salvar o pdf quando o destino for Pdf::OUTPUT_SAVE.
//Ex:
$pdf->gerarBoleto(Pdf::OUTPUT_SAVE, storage_path('app/boletos/meu_boleto.pdf')); // salva o boleto na pasta.
$pdf_inline = $pdf->gerarBoleto(Pdf::OUTPUT_STRING); // retorna o boleto em formato string.
$pdf->gerarBoleto(Pdf::OUTPUT_DOWNLOAD); // força o download pelo navegador.
// Gerar em HTML
$html = new Eduardokum\LaravelBoleto\Boleto\Render\Html();
$html->addBoleto($boleto);
// Ou para adicionar um array de boletos
$html->addBoletos($boletos);
// Para mostrar a janela de impressão no load da página
$html->showPrint();
// Para remover as intruções de impressão
$html->hideInstrucoes();
$html->gerarBoleto();
$remessaArray = [
'agencia' => 9999,
'agenciaDv' => 9, // se possuir
'conta' => 99999,
'contaDv' => 9, // se possuir
'carteira' => 99,
'convenio' => 9999999, // se possuir
'range' => 99999, // se possuir
'codigoCliente' => 99999, // se possuir
'variacaoCarteira' => 99, // se possuir
'beneficiario' => $beneficiario,
];
$remessa = new \Eduardokum\LaravelBoleto\Cnab\Remessa\Cnab400\Banco\Bb($remessaArray);
// Adicionar um boleto
$remessa->addBoleto($boleto);
// Ou para adicionar um array de boletos
$boletos = [];
$boletos[] = $boleto1;
$boletos[] = $boleto2;
$boletos[] = $boleto3;
$remessa->addBoletos($boletos);
echo $remessa->gerar();
$retorno = \Eduardokum\LaravelBoleto\Cnab\Retorno\Factory::make('full_path_arquivo_retorno');
$retorno->processar();
echo $retorno->getBancoNome();
// Retorno implementa \SeekableIterator, sendo assim, podemos utilizar o foreach da seguinte forma:
foreach($retorno as $registro) {
var_dump($registro->toArray());
}
// Ou também podemos:
$detalheCollection = $retorno->getDetalhes();
foreach($detalheCollection as $detalhe) {
var_dump($detalhe->toArray());
}
// Ou até mesmo do jeito laravel
$detalheCollection->each(function ($detalhe, $index) {
var_dump($detalhe->toArray())
});