A intenção deste projeto é criar uma versão alternativa do BoletoPHP (http://boletophp.com.br) adaptado para o Zend Framework 2, convertido totalmente para MVC com suas funções convertidas para classes e unificadas em uma única library.
As views foram convertidas para UTF-8 e o código de barras agora é gerado pelo Zend\Barcode.
-
cd diretorio/do/meu/projeto -
Crie um arquivo
composer.jsoncom o seguinte conteúdo:{ "minimum-stability": "dev", "require": { "jotjunior/boletophp-zf2": "dev-master" } } -
Instale o PHP Composer via
curl -s http://getcomposer.org/installer | php(No windows, acesse http://getcomposer.org/installer e o execute com o PHP) -
execute
php composer.phar install -
abra
diretorio/do/meu/projeto/config/application.config.phpe adicione a seguinte chave no índicemodules:'PhpBoletoZf2', -
Copie o arquivo
diretorio/do/meu/projeto/vendor/jotjunior/boletophp-zf2/dist/php-boleto-zf2.global.phppara o diretóriodiretorio/do/meu/projeto/config/autoloade configure seus dados.
As rotas de acesso ao módulo são:
exemplo.com/boleto[/:controller[/:format]] para acesso ao boleto;
exemplo.com/boleto[:/controller]/demo para acesso ao formulário de exemplo;
OBS: são dois formatos válidos para o boleto: html ou pdf, sendo o HTML opcionsl
Para escrever os dados do cedente, sacado ou boleto dentro do seu próprio controlador, basta fazer o seguinte:
// recebendo os dados do boleto, seja por REQUEST ou Banco de Dados
$data = array( /** dados para emissão do boleto **/ );
// Instanciando as classes relacionadas ao boleto
$boleto = new BoletoItau($data);
$sacado = new Sacado($data);
$cedente = new Cedente($data);
// chamando o serviço para criação do boleto
$itau = $this->getServiceLocator()
->get('Boleto\Itau')
->setSacado($sacado)
->setCedente($cedente)
->setBoleto($boleto);
$dados = $itau->prepare();
// montando a view
$view = new ViewModel(array("dados" => $dados));
$view->setTerminal(true); // elimina o layout
$view->setTemplate("/php-boleto-zf2/itau/index");
return $view;Página de demonstração do projeto
Este projeto é inspirado no BoletoPHP