Migrer à partir des versions précédentes
L'API de Zend_Locale a changé au cours du temps. Si vous avez
commencé à utiliser Zend_Locale et ses sous-composants avec les
versions précédentes, suivez les lignes directrices ci-dessous pour migrer vos scripts et
ainsi utiliser la nouvelle API.
Migrer de la version 1.6 vers 1.7 ou plus récent
Changement dans l'utilisation de isLocale()
Conformément aux standards de codage isLocale() a été changé pour
retourner un booléen. Dans les versions précédentes une chaîne était retournée lors
du succès. Pour la version 1.7 un mode de compatibilité a été ajouté qui vous permet
d'utiliser l'ancien comportement (avec une chaîne retournée), mais ceci émet un
warning pour vous informer de changer vers le nouveau comportement. Le reroutage que
l'ancien comportement de isLocale() pouvait avoir à faire n'est plus
nécessaire car tous les composants de l'I18N traiteront maintenant eux-mêmes le
reroutage.
Pour migrer vos scripts vers la nouvelle API, utilisez simplement la méthode
décrite ci-dessous.
Comment changer l'appel de isLocale() de 1.6 vers 1.7 ?
Notez que vous pouvez utiliser le second paramètre pour voir si la locale
est correcte sans nécessiter de reroutage.
Changement dans l'utilisation de getDefault()
La signification de la méthode getDefault() a été changé étant
donné que nous avons intégré une locale de framework qui peut être paramétrée avec
setDefault(). Ceci ne renvoie plus la chaîne de la locale mais
seulement la locale du framework.
Pour migrer vos scripts vers la nouvelle API, utilisez simplement la méthode
décrite ci-dessous.
Comment changer l'appel de getDefaut() de 1.6 vers 1.7 ?
getDefault(Zend_Locale::BROWSER);
// Même exemple pour ZF 1.7
// Vous devez changer le mode de compatibilité pour empêcher l'émission de warning
// Mais ceci peut être fait dans votre bootstrap
Zend_Locale::$compatibilityMode = false;
$locale = Zend_Locale::getOrder(Zend_Locale::BROWSER);
]]>
Notez que le second paramètre de l'ancienne implémentation de
getDefault() n'est plus disponible non plus, mais les valeurs
retournées sont les mêmes.
Par défaut l'ancien comportement est toujours actif, mais émet un warning.
Quand vous avez changé votre code vers le nouveau comportement, vous devriez
aussi changer le mode de compatibilité à false ainsi aucun nouveau
warning ne sera émis.