Pegar dados de retorno Regex Pessoal, precisa pegar os dados de retorno com a seguinte função ...
RB
Pegar dados de retorno Regex  
Pessoal,
precisa pegar os dados de retorno com a seguinte função

 
  1. <?php
  2. public static function onTelefone($param)
  3. {
  4. if (isset($param))
  5. {
  6. $link = 'https://qualoperadora.info/consulta';
  7. $dados = array
  8. (
  9. 'tel'=> preg_replace('/[^0-9]/','',$param['code'].$param['tel']),
  10. 'bto'=>'Descobrir Operadora'
  11. );
  12. $dados = http_build_query($dados,null,"");
  13. $ch = curl_init($link);
  14. curl_setopt($ch, CURLOPT_REFERER, $link);
  15. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  16. curl_setopt($ch, CURLOPT_MAXREDIRS, 3);
  17. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  18. curl_setopt($ch, CURLOPT_POST, true);
  19. curl_setopt($ch,CURLOPT_POSTFIELDS, $dados);
  20. //curl_setopt($ch, CURLOPT_COOKIEJAR, $arquivo);
  21. $html = curl_exec($ch);
  22. $txt = preg_split("/:/", $html);
  23. print_r($txt);
  24. exit();
  25. curl_close($ch);
  26. }
  27. }
  28. ?>


Porém estou tendo dificuldades em pegar o número, a operadora e o tipo e atribuir a uma variável, conforme a imagem abaixo.

Alguém podeme dar um auxilio ?

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (1)


B

Está praticamente resolvido, foi um desafio interessante. No link do GitHub tem a solução completa

https://github.com/bjverde/appexemplo_v2/blob/master/app/control/forms/TelefoneForm.php

Os problema enfrentados foram
* HTTPS não funciona com curl sem informar alguns parâmetros
* Do HTML recebido pegar só o corpo
* Do Body pegar a TAG com uma determinada classe.

O resultado gerado é bem simples de tratar

 
  1. <?php
  2. TelefoneForm.php:52:string
  3. '<div class="resultado">
  4. <h1>(61) 99999 9999</h1>
  5. <div class="img"><img src="/img/op/oi.png" alt="Oi" title="Oi"> <div>Celular</div></div>
  6. <p><span>Portabilidade:</span> Não</p>
  7. <p><span>Estado:</span> Distrito Federal (DF) / Goiás (GO)</p>
  8. <p><span>Região:</span> Brasília / Entorno do Distrito Federal</p>
  9. <script> ga("send", "event", "Consulta", "Sucesso"); </script>
  10. </div>
  11. ?>