Upgrade to Pro — share decks privately, control downloads, hide ads and more …

i18n en PHP

Betabeers
April 21, 2012

i18n en PHP

Ponente Gotardo González

Betabeers

April 21, 2012
Tweet

More Decks by Betabeers

Other Decks in Education

Transcript

  1. posibles soluciones •duplicar el proyecto en dos carpetas: www.midominio.com/es/ www.midominio.com/en/

    •crear un fichero con constantes o un array de contenidos: define(_HolaMundo_, “Hello, World”); no! mmmh...
  2. ficheros .po y .mo Portable Objects Machine Objects http://www.poedit.net/ #:

    Un comentario msgid "Hola, %s" msgstr "Hola, %s." es_ES.po #: This is a comment msgid "Hola, %s" msgstr "Hello %s." en_US.po texto
  3. el árbol . .. /css/ /inc/ /javascript/ /locale/ /es_ES/ /fr_FR/

    /zh_CN/ index.php mi_aplicacion.po mi_aplicacion.mo viernes 20 de abril de 12
  4. algunas funciones <?php //Establece una variable de entorno putenv("LC_ALL=" .

    $idioma); //Establece una configuración de info. regional setlocale(LC_ALL, $idioma); //Establece una ruta para el dominio bindtextdomain(“mi_aplicacion”, “./locale/”); //Define el dominio de texto textdomain(“mi_aplicacion”); ?> viernes 20 de abril de 12
  5. todo preparado <?php //Buscar la traducción de una cadena echo

    _(“Hola, mundo”); ?> viernes 20 de abril de 12
  6. un último consejo <ul> <li><a href = “index.php?lang=en”>English</a></li> <li><a href

    = “index.php?lang=es”>Español</a></li> <li><a href = “index.php?lang=fr”>French</a></li> </ul> Mejor