PHP 8.5.0 Alpha 1 available for testing

strnatcasecmp

(PHP 4, PHP 5, PHP 7, PHP 8)

strnatcasecmpComparación de strings con el algoritmo de "orden natural" (insensible a mayúsculas/minúsculas)

Descripción

strnatcasecmp(string $string1, string $string2): int

strnatcasecmp() implementa el algoritmo de comparación que ordena los strings como lo haría un ser humano. Esta función es similar a la función strnatcmp(), pero la comparación no es sensible a mayúsculas/minúsculas. Para más detalles, consulte » Natural Order String Comparison de Martin Pool (en inglés).

Parámetros

string1

El primer string.

string2

El segundo string.

Valores devueltos

Returns a value less than 0 if string1 is less than string2; a value greater than 0 if string1 is greater than string2, and 0 if they are equal. No particular meaning can be reliably inferred from the value aside from its sign.

Historial de cambios

Versión Descripción
8.2.0 This function is no longer guaranteed to return strlen($string1) - strlen($string2) when string lengths are not equal, but may now return -1 or 1 instead.

Ejemplos

Ejemplo #1 Ejemplo con strnatcasecmp()

<?php

var_dump
(strnatcasecmp('Apple', 'Banana'));
var_dump(strnatcasecmp('Banana', 'Apple'));
var_dump(strnatcasecmp('apple', 'Apple'));
?>

El resultado del ejemplo sería:

int(-1)
int(1)
int(0)

Ver también

  • preg_match() - Realiza una búsqueda de coincidencia con una expresión regular estándar
  • strcmp() - Comparación binaria de strings
  • strcasecmp() - Comparación insensible a mayúsculas/minúsculas de strings binarios
  • substr() - Devuelve un segmento de string
  • stristr() - Versión insensible a mayúsculas y minúsculas de strstr
  • strncasecmp() - Comparación binaria de strings insensible a mayúsculas/minúsculas
  • strncmp() - Comparación binaria de los n primeros caracteres
  • strstr() - Encuentra la primera ocurrencia en un string
  • setlocale() - Modifica la información de configuración local

add a note

User Contributed Notes 2 notes

up
8
chatfielddaniel at googlemail dot com
14 years ago
The function treats '_' as after letters and numbers when it would be placed before logically.
up
3
Marco
9 years ago
Use strnatcmp to avoid the _ problem as mentioned below;

<< The function treats '_' as after letters and numbers when it would be placed before logically. >>
To Top