| « Text Munger (ou nem tudo é como deveria ser) | Shell Script engraçadinho e (quase) inútil » |
Comparação de versões
Para um software, dizer que a versão 0.2 é maior que a 0.1 é moleza, mas como dizer que a versão 0.2.2 é maior que a 0.2?
Esse é um tipo de comparação que pode ser necessário feita. Talvez você tenha alguma parte do seu código que tenha uma implementação diferente e melhor para acima da versão x. O b2evolution usa isso, por exemplo, para habilitar o modo TRADITIONAL no Mysql quando o debug está ativado apenas a partir do MySQL 5.0.2. E usa também para habililtar alguns espertezas disponíveis apenas no PHP 5.1.
Em Python, a comparação pode ser feita usando o pkg_resources:
>>> from pkg_resources import parse_version
>>>
>>> parse_version("0.10") > parse_version("0.9")
True
>>> True
True
>>> parse_version("0.2.2") > parse_version("0.2")
True
>>> parse_version("0.1.2") > parse_version("0.2")
False
>>> parse_version("0.2.2") > parse_version("0.2")
True
>>>
Em PHP, usa-se a função version_compare
(Dica do pkg_resources retirada de http://lucumr.pocoo.org/cogitations/2008/06/19/%E2%80%A6-and-010-follows-09/)
Endereço de trackback para este post
Trackback URL (clique direito e copie atalho/localização do link)


