Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Acaba de ser lançada a biblioteca de integração com o Correios para cálculo de preço e prazo de encomendas.
Anúncio :seta: http://imasters.com.br/noticia/21419/apis/imasters-lanca-novo-pacote-de-integracao-com-os-correios
Repositório :seta: https://github.com/iMastersDev/correios
Para utilizar:
<?php
require_once 'com/imasters/php/ect/ECT.php';
$ect = new ECT();
$prdt = $ect->prdt();
$prdt->setNVlAltura( 10 );
$prdt->setNVlComprimento( 20 );
$prdt->setNVlLargura( 20 );
$prdt->setNCdFormato( ECTFormatos::FORMATO_CAIXA_PACOTE );
$prdt->setNCdServico( ECTServicos::PAC ); //calculando apenas PAC
$prdt->setSCepOrigem( '09641030' );
$prdt->setSCepDestino( '27511300' );
$prdt->setNVlPeso( 10 );
foreach ( $prdt->call() as $servico ) {
printf( "O preço do frete do correios para o serviço %d é R$ %.02f\n" , $servico->Codigo , $servico->Valor );
}
Saída:
O preço do frete do correios para o serviço 41106 é R$ 22,30
O preço do frete do correios para o serviço 40010 é R$ 29,50
Todos são bem vindos a "forkar" e melhorar o código.
;)
>
Mais um código show
Show de bola primo IT!
Olá,
O seguinte erro é retorno:
======================================================================================================================
Fatal error: Cannot redeclare class HTTPRequest in C:\wamp\www\pasta\com\imasters\php\http\HTTPRequest.php on line 18
======================================================================================================================
Consta na linha 18: "interface HTTPRequest {"; Como resolver?
A classe HTTPRequest está sendo declarada mais de uma vez.
Você modificou alguma coisa nos requires? Como esta boblioteca do João não usa autoload, use sempre require_once para garantir que o arquivo contendo a classe seja incluído apenas uma vez.
Se estiver tudo certo com os requires, verifique se você não possui outra classe com o mesmo nome em sua aplicação.
Eu tive esse mesmo problema quando usei o código da Cielo junto ao ECT , pois ambas bibliotecas usam o pacote de requisições HTTP dele .. daí acontecia esse erro, o que eu fiz pra resolver foi pegar a HTTP mais recente dele, e utilizar em ambas às classes !
Já comentei com o João para separar a HTTP das bibliotecas, e criar uma dependência nas próximas versões de biblioteca .. assim, quando formos usar qualquer classe que dependa de uma requisição HTTP, o pacote é separado, o que seria muito mais benéfico do que utilizar namespace ..
Além do mais, ia resolver esse tipo de problema, quando ele fizer atualizações no pacote HTTP igual fez na ECT, pegamos a versão mais atualizada, e adaptamos .. veja que a classe HTTP que ele usa na Cielo, é diferente da ECT ..
Não alterei nada, joguei no servidor e estou tentando visualizar o arquivo exemplo.php, e aparece essa mensagem de erro.
Olá Pessoal
Copiei todos os códigos e estou tendo esse erro:
Fatal error: Call to undefined function sys_get_temp_dir() in /home/vendaseletro/com/imasters/php/http/HTTPCookieManager.php on line 37
...
Estranho ... aqui parece que falta um diretorio.
alguem pode me ajudar?
Mais um código show