zend framework form translation zend-framework2

translation - framework - ¿Cómo configurar una configuración regional en ZF2 desde las preferencias del navegador?



form zend framework 3 (2)

En Zend framework 1 puedo hacer

try { $locale = new Zend_Locale(''browser''); } catch (Zend_Locale_Exception $e) { $locale = new Zend_Locale(''en''); } $registry = Zend_Registry::getInstance(); $registry->set(''Zend_Locale'', $locale);

Pero, ¿cómo funciona con Zend Framework 2?


Hace poco publiqué en mi blog sobre Zend Framework 2 y cómo funcionan todas las configuraciones i18n, l10n y locale. Esto también podría ser interesante para usted, ya que la configuración regional utilizada se puede configurar de muchas maneras.

Lea sobre esto: Zend Framework 2 - translate, i18n, locale

Personalmente sigo el siguiente enfoque y luego, dependiendo de su estructura, puede agregar configuraciones regionales desde la base de datos, sesión o cookies o lo que sea;

<?php namespace FileManager; use Zend/Mvc/ModuleRouteListener; class Module { public function onBootstrap($e) { $translator = $e->getApplication()->getServiceManager()->get(''translator''); $translator ->setLocale(/Locale::acceptFromHttp($_SERVER[''HTTP_ACCEPT_LANGUAGE''])) ->setFallbackLocale(''en_US''); } //... }


A juzgar por este RFC , se tomó la decisión de dejar Zend_Locale fuera de Zend Framework 2 y confiar en las clases centrales de PHP I18n .

Yo recomendaría leer el manual que comienza con la introducción para comprender bien las clases y luego refactorizar su código para usarlas.