Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/11/2015, 11:27
architelos
 
Fecha de Ingreso: agosto-2015
Ubicación: Barcelona
Mensajes: 16
Antigüedad: 8 años, 8 meses
Puntos: 0
Función in_array y acentos

Buenos días,

Estoy creando una plataforma para mi página web, pero me encuentro con una dificultad: necesito usar la función in_array para comparar si un elemento X está presente en la array Y. El problema es que a veces ese elemento X lleva acento, y no sé por qué, aunque en el array Y ese elemento lleve también acento, no me detecta que X está contenido en Y.

Estoy usando el siguiente código:
Código PHP:
$et mb_strtolower($_POST["etiqueta"],"UTF-8");
$et explode(", ",$et);
$num count($et);
$afirmacion 3;
for(
$t=0;$t<$num;$t++)
{
    if(
in_array($et[$t],$etiquetas1)) {
    if(
$afirmacion != 0) {
    
$afirmacion 1;
    }
    }
    else 
    {
        
$afirmacion 0;
    }

Por poneros un ejemplo:

Tenemos la array X: Array ( [0] => transformación digital )
Y la array Y: Array ( [0] => digitalización [1] => experiencia del cliente [2] => internet [3] => modelos operativos [4] => transformación digital [5] => nuevas tendencias [6] => nuevas tecnologías [7] => desarrollo empresarial )

Si uso la función in_array para buscar si X[0] está contenido en Y, no me detecta que sí lo está (Y[4]). En cambio, si la array X fuera "experiencia del cliente" en lugar de "transformación digital", sí me detectaría que está contenido en Y.

¿Cómo puedo hacer para que la función in_array continúe haciendo bien su trabajo aunque las cadenas tengan acentos?

Última edición por architelos; 09/11/2015 a las 11:34