
r.mobis
Membro
-
Registro em
-
Última visita
Histórico de Curtidas
-
r.mobis recebeu reputação de eskylo em [v2.0.0] TibiaRegexRecomendo que você não use RegExes para isso, é muito mais seguro - e fácil - usar um DomCrawler que dá parse na página como HTML. Se estiver trabalhando com PHP, recomendo o Symfony DomCrawler.
-
r.mobis recebeu reputação de Renato em [v2.0.0] TibiaRegexBem legal o código, mas queria fazer algumas observações:
1º. No exemplo de verificar se o char existe, você inverteu a ordem na condicional ternária. Era pra ser:
echo ($char->exists) ? "O player existe!" : "O plaaaaayer não existe!"; 2º. Tem um pequeno bug em relação ao status da conta do personagem (Free/Premmium). Se o personagem possuir 'Status:Free Account ' ou 'Status:Premmium Account ' no comentário, a classe dá parse pelo comentário, não pelo valor real da tabela. Exemplo: Raph Furys.
3º. Tem um outro bug em relação à verificação da existência do personagem, de novo relacionado ao comentário. Se o personagem possuir 'not find character' no comentário, a classe irá, errôneamente, afirmar que o usuário não existe. Exemplo: Corrupty.
Fora isso, cara, ótimo trabalho.
Edit:
Não sei se interessa, mas eu corrigi o código, a minha maneira:
https://gist.github.com/rmobis/5328893
Se quiser ver o que foi alterado, vá em revisions.
-
r.mobis deu reputação a Renato em [v2.0.0] TibiaRegexO que é?
TibiaRegex são classes que lhe auxiliam a trabalhar com conteúdo do TibiaGlobal (que tenha acesso). Por exemplo: pegar o valor (int) do level do jogador Denoca, o valor (string) do mundo do jogador Guted, entre outros.
Suporte
TRPlayer
->exists (bool)
Retorna true se o player existir, e falso se não
->name (string)
Retorna o nome do player
->sex (string)
Retorna o sexo do player
->vocation (string)
Retorna a vocação do player
->level (int)
Retorna o level do player
->achievementpoints (int)
Retorna o Achievement Points do player
->world (string)
Retorna o mundo do player
->residence (string)
Retorna a cidade natal do player
->marriedto (string)
Retorna o nome de quem está casado com player
->guildrank (string)
Retorna o nome do rank da guild do player (Leader, Member, etc)
->guildname (string)
Retorna o nome da guild do player
->comment (string)
Retorna o comentário do player
->accountstatus (string)
Retorna se a conta é free ou premium
->status (string)
Retorna 'online' ou 'offline'
Checadores
Bom, todos sabemos que existem campos que não necessariamente é exibida na página do player, como por exemplo o comentário. Só aparece, se o player em questão tiver colocado em sua página de seu perfil. Ou outro exemplo a guild, se o player não tem guild, não aparece. Para isso o TibiaRegex possui os checadores em bool (true/false) para saber se possuí ou não tal campo.
->exists (bool)
Retorna true se o player existir, e false se não
->online (bool)
Retorna true se o player estiver online, e false se não
->check_marriedto (bool)
Retorna true se o player for casado, e false se não.
->check_guild (bool)
Retorna true se o player tiver guild, e false se não.
->check_comment (bool)
Retorna true se o player tiver comentário, e false se não. Como usar
Primeiro baixar o TibiaRegex, você terá várias class (nesta primeira versão só tem uma, que é o TRPlayer).
Apenas importe (includa) a class que deseja usar e estará pronto para usar
<?php include('TRPlayer.class.php'); //importando Alguns exemplos:
Código:
$char = new TRPlayer('Guted'); echo $char->vocation; Output:
Royal Paladin Código:
$char = new TRPlayer('Hallsiny'); echo $char->level; Output:
201 Código:
$char = new TRPlayer('UmCharQueNaoExiste A'); echo ($char->exists) ? "O player existe!" : "O player não existe!"; Output:
O player não existe! Código:
$char = new TRPlayer('Rensiny'); echo $char->name.'<br />'.$char->sex.'<br />'.$char->vocation.'<br />'.$char->level.'<br />'.$char->achievementpoints.'<br />'; Output:
Rensiny male Master Sorcerer 74 40 Change Log 2.0
Código limpo e organizado Patterns passaram a ser por variáveis e não constantes (pois retornavam Notice quando usados mais de duas vezes na mesma página) Adicionado o parâmetro opcional $loadall, com padrão true. Caso false, ao invés de ->level ficará ->level(), pois a função que guarda o valor na variável. É bom pra reduzir o carregamento e deixar leve. Adicionado status e online informações acima. Download
TRPlayer.class.php
ou
http://pastebin.com/raw.php?i=Q8bWMCAA
É isso ai pessoal http://tibiaking.com/forum/public/style_emoticons/#EMO_DIR#/smile.png
Pras próxima versões eu pretendo fazer suporte para guilds, highscores, e muitos outros lugares que dá pra tirar informação útil.
Por que Regex? Regex é a abreviação (junto com ER, RegExp, preg, e muitas outras) de Expressões Regulares, que é o pilar de todo o código. Sem Regex não teria TibiaRegex.
Deem seus feedbacks.
Obrigado,
Renato Ribeiro.