|    
			
				11/07/2015, 07:40
			
			
			  | 
  |   |  |  |  |  Fecha de Ingreso: diciembre-2009 Ubicación: Beijing 
						Mensajes: 69
					 Antigüedad: 15 años, 10 meses Puntos: 0 |  | 
  |   Arrays y preg_match 
  Un saludo a los que me leen y a los que no:
 Estoy realizando un detector de idiomas que trabaja en lenguajes de 2 y 4 letras, ej. es y es-ES. Por lo que tengo:
 Hay mas lineas pero estoy trabado en esta parte en la que los valores de array $languages deban contener 2 letras en vez de 4, cosa que logro. El problema esta al usar preg_match() para buscar coincidencia entre $blang y cada lenguaje del array $languages, lo que al almacenar resultado en $language lo hace en array() y lo que quiero es que me guarde el unico valor de si es "en", "es" o "zh" el cual esta reflejado en $blang.
 [PHP]
 $languages = array ('en-US', 'es-ES', 'zh-CN');
 $blang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 5); // Actualmente "es,en".
 // (...)
 $blang = substr($blang, 0, 2);
 // (...)
 foreach ($languages as $lang)
 {
 $language = substr($lang, 0, 2);
 
 preg_match("/\b".$blang."\b/i", $lang, $language);
 
 $language = substr($lang, 0, 2);
 }
 [PHP]
 
 En si lo que quiero es saber que otra opcion puedo usar para que $blang sea comparada dentro de el array $languages y que ese especifico valor que coincida, ej. "es" (Ya que es un codigo de lenguaje de 2 letras) sea almacenado en $language y no los valores "eneszh", como me esta haciendo.
 
 Alguna idea en vez de preg_match usar otra cosa o quizas emplearlo de otra manera sin alterar tanto el codigo?
   Última edición por eccorposse; 11/07/2015 a las 08:06
					
					
						Razón: Errores al plantear por falta de informacion
     |