Ir para conteúdo

PHP: Como pegar o número de followers do Twitter


Chakal

Posts Recomendados

PHP: Como pegar o número de followers do Twitter


Olá, nesta matéria vamos mostrar como você pode personalizar em seu site o número de seguidores do Twitter. Vamos usar arquivo de cachê para que não fique sempre fazendo requisições no servidor do microblog.

Bom sem mais vamos ao código, criamos um arquivo chamado sn_twitter.php – de social network twitter. Nele consta a função que utilizaremos para fazer a requisição, que segue:
  function twitter_followers_counter($username) {     $cache_file = 'cache/twitter_followers_counter_' . md5 ( $username );     if (is_file ( $cache_file ) == false) {         $cache_file_time = strtotime ( '1984-01-11 07:15' );     } else {         $cache_file_time = filemtime ( $cache_file );     }     $now = strtotime ( date ( 'Y-m-d H:i:s' ) );     $api_call = $cache_file_time;     $difference = $now - $api_call;     $api_time_seconds = 7200;     if ($difference >= $api_time_seconds) {         $api_page = 'http://twitter.com/users/show/' . $username;         $xml = downloadUrl( $api_page );         $profile = new SimpleXMLElement ( $xml );         $count = $profile->followers_count;         if (is_file ( $cache_file ) == true) {             unlink ( $cache_file );         }         touch ( $cache_file );         file_put_contents ( $cache_file, strval ( $count ) );         return strval ( $count );     } else {         $count = file_get_contents ( $cache_file );         return strval ( $count );     } } ?>

O que a função faz:
Inicialmente ela define o nome do arquivo que será o cachê, lembrando que você precisa ter na raiz do seu site uma pasta chamada cache - com permissões para gravação (0777). Feito isto, ela vai verificar se existe o arquivo já gravado na pasta, se não ouver ele define a data acima setada, se existir, ele pega a data do arquivo - da última atualização.

A variável $api_time_seconds = 7200;, 7200 determina 2 horas, este valor é em segundos, então de 2 em 2 horas ele vai verificar no Twitter se existe alteração do número de seguidores. Então no IF:  if ($difference >= $api_time_seconds) { ele verifica se o arquivo atual já é mais antigo que 2 horas, se for ele vai ir na API do Twitter, fazendo download com a funcção downloadUrl (vide anexo) $xml = downloadUrl( $api_page );. 

O resultado do download é trabalhado com XML, depois disto ele verifica se existe o arquivo cache, se existir, ele remove para criar novamente, usando a função file_put_contents.

E se o tempo não for maior, ele vai no arquivo de cache e busca o número que lá dentro estará gravado. 
  Como chamar a função?
Simplesmente com o código abaixo: echo twitter_followers_counter('oficinadanet');
Então pessoal está é a função que faz buscar os dados, no arquivo para download abaixo, existe a função downloarUrl(). Que é utilizada para baixar a página da API usando CURL.    Fonte: OficinaNet.
 

 

                                 pokemon go (2).gif

                                           Solta aquela reação para ajudar 

Link para o comentário
Compartilhar em outros sites

  • Respostas 0
  • Criado
  • Última resposta

Mais Ativos no Tópico

Dias Populares

Mais Ativos no Tópico

Dias Populares

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora


×
×
  • Criar Novo...

Informação Importante

Termos de Uso Política de Privacidade Regras