Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Danieu!

arquivo .txt bugado e comparar strings

Recommended Posts

DÚVIDA 1:

 

Bem, um fã-site do Jogo Habbo Hotel me pediu para mim fazer um sistema, que detectasse quando chegasse novidades ao Jogo. O Jogo pega arquivos externos, que se chamam: external variables, productdata e furnidata. Esses arquivos são acessíveis.... antes de chegar uma novidade no Jogo, elas são "cadastradas" nesses arquivos.

 

Então eu simplesmente criei um script, que salva esses arquivos em um diretório, e compara esses arquivos salvos com os hospedados no Jogo, se houver algo diferente, os arquivos são salvos novamente...

 

Mas aí que está o problema, estão sendo salvos dessa forma: (veja aqui como é o arquivo furnidata que o SCRIPT pega)

 

131103034848331807.png

 

 

Segue o código....

não me apedrejem se o erro for bobagem minha

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" /> 

</head>
<body>

<?php
header('Content-Type: text/html; charset=ISO-8859-1');

//Recebe o Hotel.
$hotel = $_POST["titulo"];

//Verifica se o Hotel está em manutenção.
$urlhotelmanu = 'http://www.'.$hotel.'/home/daniel';
$headers = get_headers($urlhotelmanu);
 if ($headers[0] != "HTTP/1.1 200 OK")
 {
  die("Oops! Parece que o hotel está em manutenção!");
 }

 $urlhotel = 'http://www.'.$hotel;
 
 //Diretório do arquivo salvo
 $furnidataNome            = 'furnidata/FURNIDATA-'.$hotel.'.txt'; 
 //Pega o arquivo salvo
 $furnidataATUAL           = strtoupper(dechex(crc32(file_get_contents($furnidataNome))));
 //Pega o arquivo no link: http://www.habbo.com.br/gamedata/furnidata/ab8f74ecb4497411f316033e2aa54bf8fc910875
 $furnidataHOTEL           = strtoupper(dechex(crc32(file_get_contents($urlhotel.'/gamedata/furnidata/1'))));
 
 //Se o arquivo salvo for diferente do hospedado....
 if($furnidataATUAL != $furnidataHOTEL)
 {
 //$furnidataNome é o diretório onde está o arquivo.
 //O file_get_contents pega esse link: http://www.habbo.com.br/gamedata/furnidata/ab8f74ecb4497411f316033e2aa54bf8fc910875
 file_put_contents($furnidataNome, file_get_contents($urlhotel.'/gamedata/furnidata/1'));
 }
 
 
 //Daqui pra baixo ainda não terminei, por causa do problema da garavação do arquivo, então ignore aqui.
 $productdataNome          = 'productdata/PRODUCTDATA-'.$hotel.'.txt'; 
 $productdataATUAL         = strtoupper(dechex(crc32(file_get_contents($productdataNome))));
 $productdataHOTEL         = strtoupper(dechex(crc32(file_get_contents($urlhotel.'/gamedata/productdata/1'))));
 
 $externalNOME             = 'externalvariables/EXTERNAL-'.$hotel.'.txt'; 
 $externalvariablesATUAL   = strtoupper(dechex(crc32(file_get_contents($externalNOME))));
 $externalvariablesHOTEL   = strtoupper(dechex(crc32(file_get_contents($urlhotel.'/gamedata/external_variables/'))));
 
?>

</body>
</html>

DÚVIDA 2:

Ok, vocês viram como o arquivo furnidata é doido. Eu consigo interpretar as linhas.... mas é difícil ver o que tem de novo, meu script acima avisa quando tem algo novo.... mas não fala o que realmente tem de novo.

 

Tipo, eu sei comparar strings.... mas não faço ideia de como 'printar' qual a diferença de ambas as strings.

 

Ex:

<?php
$arquivo1 = '1,2,3,4';
$arquivo2 = '1,2,3,4,5';

if ($arquivo1 != $arquivo2)
{
 echo 'Os arquivos são diferentes.';
}


?>

Como eu faria para o script mostrar, que a diferença da String $arquivo2 em relação a String $arquivo1 é o número 5?

 

Espero que tenham me entendido rs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.