Foros del Web » Programando para Internet » PHP »

php se raya

Estas en el tema de php se raya en el foro de PHP en Foros del Web. hola tios, tengo el siguiente codigo en php: Código PHP: if (! strcasecmp ( $nombreAntiguo , $nombreNuevo ))  donde los valores de las vars son: $nombreAntiguo="Juan ...
  #1 (permalink)  
Antiguo 23/11/2004, 10:46
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 14 años, 4 meses
Puntos: 0
php se raya

hola tios, tengo el siguiente codigo en php:
Código PHP:
if (!strcasecmp($nombreAntiguo,$nombreNuevo)) 
donde los valores de las vars son:

$nombreAntiguo="Juan Rodriguez Parra";
$nombreNuevo="JuaN RodRIGUEz PaRRa";

se supone que para estos valores no se debería entrar en el if, pero entra siempre, incluso poniendo en los dos exactamente lo mismo. Me puede decir alguien que esta pasando
  #2 (permalink)  
Antiguo 23/11/2004, 11:26
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 14 años
Puntos: 13
Con la funcion strcasecmp($valor1,$valor2) comparas si dos valores son iguales, independiente de como hagan uso de las altas y bajas.

Si realizas la comparacion a estos valores:

$nombreAntiguo="Juan Rodriguez Parra";
$nombreNuevo="JuaN RodRIGUEz PaRRa";

te dará como resultado "0", es decir, ambos valores son iguales.


Cuando usas:
if (!strcasecmp($nombreAntiguo,$nombreNuevo))

es lo mismo a que hicieras:
if(strcasecmp($nombreAntiguo,$nombreNuevo) == 0)


¿Se entiende? (No puedo dar una explicacion mas tecnica porque es primera vez que veo esa funcion jaja :P )
__________________
El conocimiento es libre: Movimiento por la Devolución
  #3 (permalink)  
Antiguo 23/11/2004, 13:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Y .. por qué no usas un simple != (diferente) en el IF? .. eso sí .. para "igualar" sin problemas de mayusculas o minusculas .. convierte ambas cadenas a minusculas o mayusculas para su comparación:

Código PHP:
if (strtoupper($cadena1)) != strtoupper($cadena2)){

// son diferentes (de contenido .. no de forma tal vez).


Un saludo,
  #4 (permalink)  
Antiguo 25/11/2004, 10:44
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 14 años, 4 meses
Puntos: 0
gracias tios, el problema se resolvio con solo poner " ==0 ".
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:00.