Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sem suporte a PHP 7.2 e sugestões #29

Open
trialforce opened this issue Apr 19, 2020 · 3 comments
Open

Sem suporte a PHP 7.2 e sugestões #29

trialforce opened this issue Apr 19, 2020 · 3 comments

Comments

@trialforce
Copy link

trialforce commented Apr 19, 2020

Bom dia amigo, tudo bem.

Primeiro queria agradecer pelo compartilhamento do código funcional.

Tenho algumas observações para fazer.

  1. Na sua classe WebserviceCaixa você usando var. Onde o certo seria usar public. Var vai parar de funcionar no futuro do php.
  2. O arquivo XmlDomConstruct está usando short tags <?. O que não é padrão do php e gera problemas na maioria de instalações.
  3. NuSoap usando construtor com mesmo nome. O que já é deprecated a muito tempo no PHP
    Basicamente tive que refatorar o NuSoap inteiro pra funcionar com php 7.2. Seria legal deixar isso atualizado ou mesmo trocar pra lib de soap nativa do PHP.
  4. Faltou algum controle de erro básico: Limpar . e / dos CPF/CNPJ. Informar que o nosso_numero precisa vir sem o digito verificador. Campo cep também precisa ser limpa de traço.
  5. Quanto aos erro do webservice: A mensagem: (BK76) ERRO NA FORMATACAO DA MENSAGEM é muito genérica. Seria muito interessante a biblioteca controlar o que vem no campo EXCECAO.
  6. A nível de sugestão: também seria legal a biblioteca ter um campo CPF_CNPJ, onde você passaria qualquer campo dado e ela iria detectar e resolver o xml certo pra requisição, no caso arrumando o nome/razao social.

Espero ter ajudado.

@wilmaxmcruz
Copy link

@trialforce bom dia! você poderia compartilhar os códigos que teve que refatorar. E no caso do erro Fatal error: Uncaught Error: Class 'XmlDomConstruct' not found como você resolveu?
obrigado

@trialforce
Copy link
Author

Olá @wilmaxmcruz. Conforme minha observação 2. O código da classe XmlDomConstruct está com short open tags <?. As versões mais novas do PHP não suportam isso por padrão.
Então se você trocar <? por <?php o sistema passa a reconhecer este arquivo como php.

Primeira linha desse arquivo.
https://github.com/vmassuchetto/WebserviceCaixa/blob/master/lib/XmlDomConstruct.php

Fora isso tive que trocar os método de construção de classe para __construct em todas as classes do nusoap.

@wilmaxmcruz
Copy link

Boa @trialforce fiz as alterações aqui e funcionou. Valeu!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants