version_compare
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
version_compare — Compara duas strings de número de versão no "padrão PHP"
Descrição
version_compare() compara duas strings de número de versão no "padrão PHP".
A função primeiro substitui _
, -
e
+
por um ponto .
nas strings de versão
e também insere pontos .
antes e depois de qualquer
não-número para que, por exemplo, '4.3.2RC1' se torne '4.3.2.RC.1'. Em seguida,
compara as partes começando da esquerda para a direita. Se uma parte contiver
strings especiais de versão, elas serão tratadas na seguinte ordem:
qualquer string não encontrada nesta lista
<
dev
< alpha
=
a
< beta
=
b
< RC
=
rc
< #
<
pl
= p
. Desta forma, não apenas versões
com níveis diferentes como '4.1' e '4.1.2' podem ser comparadas, mas também qualquer
versão específica do PHP contendo estado de desenvolvimento.
Parâmetros
version1
-
Primeiro número de versão.
version2
-
Segundo número de versão.
operator
-
Um operador opcional. Os operadores possíveis são:
<
,lt
,<=
,le
,>
,gt
,>=
,ge
,==
,=
,eq
,!=
,<>
,ne
respectivamente.Este parâmetro diferencia maiúsculas de minúsculas, os valores devem estar em minúsculas.
Valor Retornado
Por padrão, version_compare() retorna
-1
se a primeira versão for inferior à segunda,
0
se forem iguais e
1
se a segunda for menor.
Ao usar o argumento opcional operator
, a
função retornará true
se o relacionamento for aquele especificado
pelo operador, false
caso contrário.
Exemplos
Os exemplos abaixo utilizam a constante PHP_VERSION
,
pois ela contém o valor da versão do PHP que está executando
o código.
Example #1 Exemplos de version_compare()
<?php
if (version_compare(PHP_VERSION, '7.0.0') >= 0) {
echo 'Estou pelo menos na versão 7.0.0 do PHP, minha versão: ' . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
echo 'Estou pelo menos na versão 5.3.0 do PHP, minha versão: ' . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, '5.0.0', '>=')) {
echo 'Estou pelo menos na versão 5.0.0 do PHP, minha versão: ' . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, '5.0.0', '<')) {
echo 'Ainda estou na versão 4 do PHP, minha versão: ' . PHP_VERSION . "\n";
}
?>
Notas
Note:
A constante
PHP_VERSION
contém a versão atual do PHP.
Note:
Observe que as versões de pré-lançamento, como 5.3.0-dev, são consideradas inferiores às suas versões finais correspondentes (como 5.3.0).
Note:
Strings especiais de versões como
alpha
ebeta
diferenciam maiúsculas de minúsculas. Strings de versão de fontes arbitrárias que não aderem ao padrão do PHP podem precisar ser convertidas para minúsculas com strtolower() antes de chamar version_compare().
Veja Também
- phpversion() - Obtém a versão atual do PHP
- php_uname() - Retorna informações sobre o sistema operacional em que o PHP está sendo executado
- function_exists() - Retorna true se a função informada estiver definida