variable strings mayúsculas importar frases con comparar caracter cadenas cadena buscar acentos php string sorting

strings - ¿Cómo comparar 2 cadenas alfabéticamente en PHP?



php compare strings ignore case (5)

A menudo utilizo natsort ( Natural Sort ), ya que, por lo general, solo quiero conservar la matriz para su uso posterior de todos modos.

Ejemplo:

natsort($unsorted_array); var_dump($usorted_array); // will now be sorted.

Lo que dice el título. Específicamente si tengo

$array1[''name''] = ''zoo''; $array2[''name''] = ''fox'';

¿Cómo puedo determinar que alfabéticamente el nombre de $array2 debe estar por encima de $array1 ?


Llego un poco tarde (nuevamente, todavía no era programador en 2009 :-) Nadie mencionó esto todavía, pero puedes simplemente usar los operadores que usas en el número también.

< > <= >= == != y más

Por ejemplo:

''a'' > ''b'' devuelve false

''a'' < ''b'' devuelve true

http://php.net/manual/en/language.operators.comparison.php


Puedes comparar ambas cadenas con strcmp :

Devuelve <0 si str1 es menor que str2 ; > 0 si str1 es mayor que str2 , y 0 si son iguales.


Use strcmp . Si el primer argumento para strcmp es lexicográficamente más pequeño que el segundo, entonces el valor devuelto será negativo. Si ambos son iguales, devolverá 0. Y si el primero es lexicográficamente mayor que el segundo, se devolverá un número positivo.

nótese bien. Probablemente quiera usar strcasecmp (string1,string2) , que ignora el caso ...


sort

EDIT acaba de realizar los valores de diferentes matrices, podría array_merge primero, pero no estoy seguro de que eso es lo que quieres