tocho 0 Denunciar post Postado Abril 19, 2009 Vou compartilhar com vocês uma classe que fiz para calcular o SEDEX e PAC. Deve servir para alguém estudar um pouco. /* * Classe responsável por calcular o FRETE e PAC * by MaiconC2 * maiconcarlos[arroba]gmail[dot]com */ class Frete { private $cepOrigem = "86860-000"; private $url; private $frete = array(); /* * O construtor recebe o Cep Destino e o Peso, que deve ser da seguinte forma: * 1 = 1kg - 2 = 2kg .... */ public function __construct($cepDestino, $peso) { $this->url = "https://pagseguro.uol.com.br/CalculaFrete.aspx?"; $this->url .= "CepOrigem=".$this->cepOrigem; $this->url .= "&Peso=".$peso; $this->url .= "&Valor=0,00"; $this->url .= "&CepDestino=".$cepDestino; $html = file_get_contents($this->url); // Obtêm o HTML $pattern = "@([0-9]+,[0-9]{2})@"; // Pega valores decimais com até 2 casas após a vírgula preg_match_all($pattern, $html, $matches); // Retira do HTML só o valor do Sedex e PAC // Salva no array o valor do Frete e do Sedex $this->frete['sedex'] = $matches[0][1]; $this->frete['pac'] = $matches[0][2]; } /* * Retorna um array com o valor do Sedex e PAC */ public function getFrete() { return $this->frete; } } $frete = new Frete("05046-001", "2"); var_dump($frete->getFrete()); Também aceito sugestões de melhorias, esse é o propósito. ABS Compartilhar este post Link para o post Compartilhar em outros sites
eibon 2 Denunciar post Postado Abril 19, 2009 Tópico movido Origem: Programação » PHP Destino: Programação » PHP » Laboratório de scripts (PHP) Compartilhar este post Link para o post Compartilhar em outros sites
gapaiva44 0 Denunciar post Postado Setembro 16, 2009 Vou compartilhar com vocês uma classe que fiz para calcular o SEDEX e PAC. Deve servir para alguém estudar um pouco. /* * Classe responsável por calcular o FRETE e PAC * by MaiconC2 * maiconcarlos[arroba]gmail[dot]com */ class Frete { private $cepOrigem = "86860-000"; private $url; private $frete = array(); /* * O construtor recebe o Cep Destino e o Peso, que deve ser da seguinte forma: * 1 = 1kg - 2 = 2kg .... */ public function __construct($cepDestino, $peso) { $this->url = "https://pagseguro.uol.com.br/CalculaFrete.aspx?"; $this->url .= "CepOrigem=".$this->cepOrigem; $this->url .= "&Peso=".$peso; $this->url .= "&Valor=0,00"; $this->url .= "&CepDestino=".$cepDestino; $html = file_get_contents($this->url); // Obtêm o HTML $pattern = "@([0-9]+,[0-9]{2})@"; // Pega valores decimais com até 2 casas após a vírgula preg_match_all($pattern, $html, $matches); // Retira do HTML só o valor do Sedex e PAC // Salva no array o valor do Frete e do Sedex $this->frete['sedex'] = $matches[0][1]; $this->frete['pac'] = $matches[0][2]; } /* * Retorna um array com o valor do Sedex e PAC */ public function getFrete() { return $this->frete; } } $frete = new Frete("05046-001", "2"); var_dump($frete->getFrete()); Também aceito sugestões de melhorias, esse é o propósito. ABS Bom dia vi que ja tem um tempo que você postou este cod, mais teria como você deixar um exemplo de uso. Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 16, 2009 O uso está ali amigo: $frete = new Frete("05046-001", "2"); var_dump($frete->getFrete()); basta você manipular o array que é retornado por $frete->getFrete(). Compartilhar este post Link para o post Compartilhar em outros sites