Estoy buscando un strtr compatible con UTF-8 para PHP.¿Cómo hago una strtr en UTF-8 en PHP?
7
A
Respuesta
13
function strtr_utf8($str, $from, $to) {
$keys = array();
$values = array();
preg_match_all('/./u', $from, $keys);
preg_match_all('/./u', $to, $values);
$mapping = array_combine($keys[0], $values[0]);
return strtr($str, $mapping);
}
2
function strtr_utf8($str, $from, $to) { $keys = array(); $values = array(); if(!is_array($from)) { preg_match_all('/./u', $from, $keys); preg_match_all('/./u', $to, $values); $mapping = array_combine($keys[0], $values[0]); }else $mapping=$from; return strtr($str, $mapping); }
I editado ligeramente la función de la joeforker para volver la funcionalidad de la utilización de segundo parámetro como matriz para replace_pairs.
+0
Funciona de maravilla. La respuesta aceptada debe moverse a esta. –
-1
$fromto = array(
'À'=>'A','Á'=>'A','Ã'=>'A','Â'=>'A',
'É'=>'E','Ê'=>'E',
'Í'=>'I',
'Ó'=>'O','Õ'=>'O','Ô'=>'O',
'Ú'=>'U','Ü'=>'U',
'Ç'=>'C',
'á'=>'a','à'=>'a','ã'=>'a','â'=>'a',
'é'=>'e',
'ê'=>'e',
'í'=>'i',
'ó'=>'o','õ'=>'o','ô'=>'o',
'ç'=>'c'
);
$filter = strtr($filter,$fromto);
Cuestiones relacionadas
- 1. Cómo truncar una cadena UTF8 en PHP?
- 2. php form submit utf8?
- 3. multibyte strtr() -> mb_strtr()
- 4. PHP: Problema con la conversión de caracteres strtr
- 5. MySQL - Convertir caracteres latin1 en una mesa de UTF8 en UTF8
- 6. Cuándo usar strtr vs str_replace?
- 7. cómo puedo detectar caracteres hebreo tanto iso8859-8 como utf8 en una cadena usando php
- 8. Conversión de latin1_swedish_ci a utf8 con PHP
- 9. ¿Cómo hago una solicitud PATCH en Python?
- 10. ¿Cómo hago una asignación múltiple en MATLAB?
- 11. ¿Cómo hago ToString() una enumeración en C++?
- 12. Flujo de trabajo UTF8 PHP, MySQL resume
- 13. (鉑) funciones de cadena y UTF8 en php
- 14. Procesamiento UTF8 en C
- 15. Almacenar una cadena como UTF8 en C#
- 16. ¿Cómo hago una GUI?
- 17. php json_encode utf8 char problema (mysql)
- 18. UTF-8 - PHP y MySQLi UTF8
- 19. Cómo convertir una cadena a UTF8?
- 20. Cómo mostrar UTF8 en Netbeans 7?
- 21. ¿Cómo puedo compilar LaTeX en UTF8?
- 22. ¿Cómo hago múltiples actualizaciones en una sola consulta SQL?
- 23. Cómo usar expresiones regulares para utf8 en ruby
- 24. ¿Cómo hago exponentes en Scheme?
- 25. ¿Cómo hago una subconsulta JPQL?
- 26. En Python, ¿cómo hago una malla en 3D?
- 27. C++ cómo escribir/leer ofstream en Unicode/UTF8
- 28. ¿Cómo hago "DoEvents" en WPF?
- 29. ¿Cómo hago monkeypatching en python?
- 30. ¿Cómo hago XNamespace en F #?
Debe considerar que el segundo parámetro también puede ser una matriz para la asignación. – Gumbo
No lo necesitaba, pero sería más fiel a la firma de strtr. – joeforker