Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

[SOLUCIONADO] Symfony, Silex y tener que trabajar con utf8

Estas en el tema de Symfony, Silex y tener que trabajar con utf8 en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola, Soy programador php y hace tiempo que estoy queriendo cambiar mi manera de trabajar para usar un framework en mis proyectos. Estoy a punto ...
  #1 (permalink)  
Antiguo 29/05/2014, 06:57
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Pregunta Symfony, Silex y tener que trabajar con utf8

Hola,

Soy programador php y hace tiempo que estoy queriendo cambiar mi manera de trabajar para usar un framework en mis proyectos. Estoy a punto de comenzar con silex o symfony. Quizás silex para no complejizar.

En este proceso de adaptación también tendría que migrar viejos proyectos, que están implementados en un pseudo-framework mío.
El problema es que todo mi viejo código y bases de datos están en charset ISO-8859 (latin)

No se sí puedo configurar esos frameworks para trabajar con ese charset, o que es lo mejor hacer en mi caso. Pues creo que los archivos fuentes que traen están en utf8.

Por otro lado, aunque todo el mundo recomienda trabajar con utf8 me incomoda que todo el que tenga que modificar algo en un proyecto requiera utilizar un editor que trabaje en utf8. Así por ejemplo si hay diseñadores que sólo tocan en archivos templates, views, dsps o como queramos llamarle tienen que editar con un programa adecuado y no pueden utilizar un simple notepad, que a veces puede utilizarse al ir con prisa.

Espero vuestras recomendaciones
Muchas gracias por adelantado!
  #2 (permalink)  
Antiguo 29/05/2014, 09:28
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Symfony, Silex y tener que trabajar con utf8

Cita:
Iniciado por bauhaus1975 Ver Mensaje
Hola,

Soy programador php y hace tiempo que estoy queriendo cambiar mi manera de trabajar para usar un framework en mis proyectos. Estoy a punto de comenzar con silex o symfony. Quizás silex para no complejizar.

En este proceso de adaptación también tendría que migrar viejos proyectos, que están implementados en un pseudo-framework mío.
El problema es que todo mi viejo código y bases de datos están en charset ISO-8859 (latin)

No se sí puedo configurar esos frameworks para trabajar con ese charset, o que es lo mejor hacer en mi caso. Pues creo que los archivos fuentes que traen están en utf8.
En symfony tienes que sobre escribir el método getChartset() en el appKernel.
Código PHP:
Ver original
  1. public function getCharset()
  2. {
  3.     return 'ISO-8859-1';
  4. }

Sylex trabaja de forma diferente pero usa componentes de symfony, asi que debes de poder cambiar el charset antes de enviar el response al cliente. Eso te puede servir en lo que migras a utf8 por ejemplo.
Código PHP:
Ver original
  1. use Symfony\Component\HttpFoundation\Request;
  2. use Symfony\Component\HttpFoundation\Response;
  3.  
  4. $app->post('/feedback', function (Request $request) {
  5.     $message = $request->get('message');
  6.     mail('[email protected]', '[YourSite] Feedback', $message);
  7.  
  8.     return new Response('Thank you for your feedback!', 201)->setCharset('ISO-8859-1');
  9. });

Cita:
Por otro lado, aunque todo el mundo recomienda trabajar con utf8 me incomoda que todo el que tenga que modificar algo en un proyecto requiera utilizar un editor que trabaje en utf8. Así por ejemplo si hay diseñadores que sólo tocan en archivos templates, views, dsps o como queramos llamarle tienen que editar con un programa adecuado y no pueden utilizar un simple notepad, que a veces puede utilizarse al ir con prisa.

Espero vuestras recomendaciones
Muchas gracias por adelantado!
Creo que esto es cosa de resistencia al cambio, hay editores como notepad++ que hacen lo que pides.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 29/05/2014, 09:52
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Symfony, Silex y tener que trabajar con utf8

Hola hhs,

Ante todo gracias por tu completa respuesta.

Entiendo entonces que puedo configurar el framework (hablando de Symfony o Silex) para trabajar con un charset concreto, y así puedo seguir con las base de datos MySQL en latin1.

Ahora bien, si voy a hacer eso ¿tendría que traducir todos los archivos del framework?
Porque supongo que para visualizar webs en charset ISO-8859 si los archivos php están codificados en utf8 podrían visualizarse mal algunos caracteres, por ejemplo en textos con acentos etc.

Gracias y un saludo.
  #4 (permalink)  
Antiguo 29/05/2014, 10:56
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Symfony, Silex y tener que trabajar con utf8

Cita:
Iniciado por bauhaus1975 Ver Mensaje
Hola hhs,

Ante todo gracias por tu completa respuesta.

Entiendo entonces que puedo configurar el framework (hablando de Symfony o Silex) para trabajar con un charset concreto, y así puedo seguir con las base de datos MySQL en latin1.
Tu base de datos puede estar en latin1, no afecta en el Framework
Cita:
Ahora bien, si voy a hacer eso ¿tendría que traducir todos los archivos del framework?
Porque supongo que para visualizar webs en charset ISO-8859 si los archivos php están codificados en utf8 podrían visualizarse mal algunos caracteres, por ejemplo en textos con acentos etc.

Gracias y un saludo.
No es necesarario que cambies nada en los archivos del framework. El charset afecta solo la respuesta que envias al navegador, asi que en teoría no debe de afectarte y si acaso los unicos archivos que estarian en ISO-8859 serian los de la vista.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 29/05/2014, 11:25
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Symfony, Silex y tener que trabajar con utf8

Entendido hhs,

Tomaré los consejos que has dado.
Marcaré como solucionado el hilo, y si tengo algún problema o dudas abriré otro hilo con la cuestión.

Muchas gracias tu ayuda y el tiempo que has dedicado.

Etiquetas: charset, frameworks, symfony
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 16:23.