Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Error al comparar dos string

Estas en el tema de Error al comparar dos string en el foro de PHP en Foros del Web. Hola a todos, Estoy realizando un pequeño trozo de código para un menú, quiero que al comparar dos urls me indique si son iguales y ...
  #1 (permalink)  
Antiguo 27/01/2014, 02:55
 
Fecha de Ingreso: noviembre-2013
Ubicación: Barcelona
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
Error al comparar dos string

Hola a todos,

Estoy realizando un pequeño trozo de código para un menú, quiero que al comparar dos urls me indique si son iguales y así poder insertar una clase para indicar la opción del menú seleccionada.

El problema que tengo es que cuando las comparo me dice que no son iguales, las muestro con un echo y parece que son idénticas pero al hacer un strlen() me dice que una tiene 74 caracteres y otra 78. Con el trim he probado a eliminar los espacios en blanco pero tampoco funciona

El código que uso es este:

$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$url2 = htmlentities($link[0]['link']);

if (trim($url) == trim($url2))
$selected = 'class="sfHover"';
else
$selected = '';

¿Alguien me puede ayudar? Gracias.
  #2 (permalink)  
Antiguo 27/01/2014, 05:05
 
Fecha de Ingreso: noviembre-2013
Ubicación: Barcelona
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
Respuesta: Error al comparar dos string

Hola a todos de nuevo,

ya encontré la solución. El problema es el htmlentities() -.- me estaba transformando los caracteres especiales en código html, de aquí la diferencia de caracteres. Cuando lo imprimía con un var_dump no veía el error, veía los caracteres normales. Espero que a alguien le sirva de ayuda.

Etiquetas: html, select, string
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 21:55.