IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Passing locale category name as string is deprecated. Use the LC_* -constants instead


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Avatar de FMaz
    Inscrit en
    Mars 2005
    Messages
    643
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 643
    Points : 640
    Points
    640
    Par défaut Passing locale category name as string is deprecated. Use the LC_* -constants instead
    Bonjour à tous,

    J'essaie actuellement de dynamiser l'utilisation des locales, et j'éprouve un problème assez... problématique ( )

    Alors actuellement, j'ai un objet Language qui se fait instancier et qui contient les informations suivante:
    Id, Abbreviation, Titre, Locale

    Par exemple:
    1, 'fr', 'Français', 'fr_CA'

    Ensuite un peu plus loin dans mon code, j'ai ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    setlocale('LC_MONETARY', $lng->getLocale());
    getLocale() retourne: string(5) =>'fr_CA' , donc une chaine de caractère, normal vu que la valeur est issue de MySQL.

    Ce qui me donne l'erreur suivante:
    Passing locale category name as string is deprecated. Use the LC_* -constants instead
    Ma question est donc de savoir comment me sortir de cette situation infernale, sans utiliser un mega switch tel que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $locale = null;
    switch($lng->getLocale())
    {
          case 'fr_CA':
              $locale = LC_fr_CA; // Et je trouve pas de liste de constantes, alors je suis même pas certain.
              break;
          case '....':
              ...
    }

    Merci à tous pour vos éventuels éclairs de génis

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Le message d'erreur est en rapport à la catégorie non la valeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setlocale('LC_MONETARY', ...);
    PHP aimerait plutôt qu'on utilise la constante en lieu et place d'une chaîne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setlocale(LC_MONETARY, ...);
    (un constant est toujours possible pour passer de l'un à l'autre si elle est "dynamique")

  3. #3
    Membre confirmé
    Avatar de FMaz
    Inscrit en
    Mars 2005
    Messages
    643
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 643
    Points : 640
    Points
    640
    Par défaut
    Ah bah finalement plutot besoin d'un éclair de lucidité qu'un d'un éclair de géni.

    Merci, j'étais en plein effet tunnel là... (J'ai même ouvert un rapport de bug sur la doc des manuel... que j'ai du refermé 3 minutes plus tard, haha)

Discussions similaires

  1. [WS 2003] Mots de passe local par gpo
    Par tchico100 dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 14/03/2011, 10h27
  2. The name 'AdressFamily' does not exist in the current context
    Par konamine dans le forum Windows Forms
    Réponses: 1
    Dernier message: 26/10/2008, 16h49
  3. [ORACLE 8i] ORA-01036 / oci bind by name pour string
    Par mrfred dans le forum Interfaces de programmation
    Réponses: 7
    Dernier message: 02/08/2007, 12h11
  4. Informix : -23101 Unable to load locale categories.
    Par pierredp dans le forum Informix
    Réponses: 1
    Dernier message: 10/07/2007, 12h05
  5. recuprer adresse IP et local host name
    Par einsteineuzzz dans le forum C++
    Réponses: 2
    Dernier message: 08/01/2007, 15h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo