Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/12/2012, 13:56
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema de codificación en un fichero php

Código PHP:
Ver original
  1. // Esta línea es la causante:
  2. $slug = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $slug);

Me extraña que en Windows funcione y en Linux no, porque con esa expresión regular eliminas todos los caracteres que no correspondan y no realizas alguna conversión.

Primero, deberías convertir los caracteres con tilde (AKA acento) a sus equivalentes sin tilde, ejemplo:

Código PHP:
Ver original
  1. $buscar = array('á', 'é', 'í', 'ó', 'ú'); // Llena con todos los que sean necesarios
  2. $reemplazar = array('a', 'e', 'i', 'o', 'u'); // Llena con los reemplazos correspondientes
  3.  
  4. $slug = str_replace($buscar, $reemplazar, $slug);
__________________
- León, Guanajuato
- GV-Foto