version_compare
(PHP 4 >= 4.1.0, PHP 5)
version_compare — Compara dos números de versiones estandarizados de PHP
Descripción
version_compare() compara dos string de números de versiones estandarizados de PHP.
Esta función, en primer lugar reemplaza los _, - y + por puntos . y las cadenas de texto de versiones y añade puntos . antes y después de cualquier código no numérico, de manera que '4.3.2RC1' sería '4.3.2.RC.1'. Después, compara cada una de las partes, de izquierda a derecha. Si alguna parte contuviera un texto especial de versión, se manejarían con el siguiente orden: cualquier texto que no se encuentre en esta lista < dev < alpha = a < beta = b < RC = rc < # < pl = p. De esta forma, no solo se pueden comparar versiones con diferentes niveles, como '4.1' y '4.1.2', sino que también se pueden comparar versiones específicas de PHP que contengan el estado de desarrollo en que se encuentran.
Parámetros
-
version1 -
Primer número de versión.
-
version2 -
Segundo número de versión.
-
operator -
Si se especifica el tercer argumento opcional
operator, se prueba para una relación en particular. Los posibles operadores son: <, lt, <=, le, >, gt, >=, ge, ==, =, eq, !=, <>, ne respectivamente.Este parámetro es sensible a mayúsculas, por lo que los valores debes estar en minúsculas.
Valores devueltos
Por omisión, version_compare() devuelve -1 si la primera versión es inferior a la segunda, 0 si son iguales, y 1 si la segunda es inferior.
Al usar el argumento opcional operator, la
función de volverá TRUE si se cumpliera la relación especificada por
el operador, o FALSE en caso contrario.
Ejemplos
Los siguientes ejemplos usan la constante PHP_VERSION,
ya que esta contiene el valor de la versión de PHP con que se está ejecutando
el código.
Ejemplo #1 Ejemplos de version_compare()
<?php
if (version_compare(PHP_VERSION, '6.0.0') >= 0) {
echo 'Soy al menos la versión 6.0.0 de PHP, mi versión: ' . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
echo 'Soy al menos la versión 5.3.0 de PHP, mi versión: ' . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, '5.0.0', '>=')) {
echo 'Estoy usando la versión 5 de PHP, mi versión: ' . PHP_VERSION . "\n";
}
if (version_compare(PHP_VERSION, '5.0.0', '<')) {
echo 'Estoy usando la versión 4 de PHP, mi versión: ' . PHP_VERSION . "\n";
}
?>
Notas
Nota:
La constante
PHP_VERSIONalmacena la versión de PHP en uso.
Nota:
Tenga presente que las versiones preeliminares, como por ejemplo 5.3.0-dev, se las considera inferiroes a la versión final (como por ejemplo 5.3.0).
Nota:
Las cadenas de versiones especiales como alpha y beta son sensibles a mayúsculas/minúsculas. Las cadenas de versiones desde fuentes arbitrarias que no se adhieren al estándar de PHP podrían necesitar ser convertidas a minúsculas mediante strtolower() antes de llamar a version_compare().
Ver también
- phpversion() - Obtiene la versión de PHP
- php_uname() - Devuelve información sobre el sistema operativo en que se está ejecutando PHP
- function_exists() - Devuelve TRUE si la función dada ha sido definida