nfephp-org / sped-da

Classes para geração dos documentos auxiliares usados pelos padrões Sped
Other
139 stars 238 forks source link

Utilização do método code128 () #527

Open JefersonCelestino opened 2 years ago

JefersonCelestino commented 2 years ago

Caminho da class: src/Legacy/Pdf.php

Ao utlizar o método code128() da class Pdf.php, para estar exibindo o código de barras na impressão do pdf. Obtive o seguinte erro: Trying to access array offset on value of type null na linha 212 $crypt .= strtr(substr($code, 0, $made), $this->setFrom[$jeu], $this->setTo[$jeu]);

Após realizar algumas buscas em fóruns, esse erro acontece quando se tenta passar valores nulos na function strtr(). No qual o objeto $this->setFrom e $this->setTo estão nulos. Este erro não é identificado até a versão 7.3 do PHP. Como estou utilizando a versão 8.0 do PHP o erro foi capturado.

Para corrigir o erro, fiz a seguinte alteração:

private $setFrom = ["A"=>0, "B"=>0, "C"=>0];   // Linha 14                                        
private $setTo = ["A"=>0, "B"=>0, "C"=>0];  // Linha 15   

Nesta alteração os objetos $setFrom e $setTo são iniciados como array, deixando de ser nulo.

Fico no aguardo de uma posição, obrigado por sua atenção.