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

Langage PHP Discussion :

Utiliser gettext() pour mes sites


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 579
    Points : 804
    Points
    804
    Par défaut Utiliser gettext() pour mes sites
    Bonjour,
    Je voudrais utiliser gettext pour mes sites. Jusqu'à maintenant, je stockais les messages courts en base de données. Ceci fonctionne mais nécessite de créer une base de données dans des applications qui n'en utilisent pas.
    J'ai étudié plusieurs tutos (http://tassedecafe.org/fr/internatio...p-gettext-2878, https://www.codeandweb.com/babeledit...ettext-and-php ou https://fr.opensuse.org/Equipe_de_tr...iers_PO_et_POT) mais je ne m'en sors pas.
    J'aimerais commencer à la main avec un exemple basique en créant et en appelant des fichiers créés à la main qui utilisent uniquement bindtextdomain() et textdomain().

  2. #2
    Membre confirmé
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 321
    Points : 642
    Points
    642
    Par défaut
    Bonjour,

    Difficile de t'apporter de l'aide sans plus de détail.

    Un exemple basique avait été proposé sur une précédente discussion : https://www.developpez.net/forums/d2...aduit-gettext/

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 579
    Points : 804
    Points
    804
    Par défaut
    Merci. Je me souviens très bien de cette discussion et à l'époque je ne m'en étais pas sorti.
    Je vais essayer d'avancer pas à pas.
    Première question sur les paramètres de bindtextdomain(). Je ne vois pas à quoi correspond le premier paramètre: c'est un domaine que je défini et qui dirige sur le chemin du second paramètre ou c'est un chemin qui doit déjà exister?
    EDIT: Deuxième point: xgettext n'est pas installé sur mon PC et une recherche sur le Net ne m'a pas permis de le trouver pour l'installer. Pour travailler à la main, je n'en ai peut-être pas besoin dans un premier temps.

  4. #4
    Membre émérite
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 757
    Points : 2 992
    Points
    2 992
    Par défaut
    Bonjour

    Pour comprendre ton besoin, que souhaites-tu (je ne connais pas gettext)?

    Si c'est gettext("Hello") pour avoir un texte / phrase associé à hello, un bête fichier json fait le job.

    C'est ainsi qu'on gère les fichiers de traduction. Un fichier fr-FR.json et en-GB.json pour les traductions en anglais. Est-ce cela ton besoin ?

    Un bête fichier json que tu charges dans un array et et retournes la clef associée.
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 579
    Points : 804
    Points
    804
    Par défaut
    C'est peut-être une bonne idée. Mais je ne sais comment gérer les fichiers json ni les interfacer avec PHP. Je vais me pencher sur la question.

  6. #6
    Membre émérite
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 757
    Points : 2 992
    Points
    2 992
    Par défaut
    Oh tu verras c'est ultra simple. En max dix lignes de code tu le fais.

    Un file_get_content pour lire le fichier en mémoire, un json_decode pour conversion en array et en fait c'est quasi fait. Reste à faire proprement dans une classe, une méthode telle que get() qui retourne le texte et un chargement du fichier une seule fois (dans le constructeur).

    Vraiment simple.


    Edit : voici un exemple https://code.tutsplus.com/how-to-parse-json-in-php--cms-36994t.
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be

  7. #7
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 579
    Points : 804
    Points
    804
    Par défaut
    Merci. C'est effectivement ultra-simple avec un minimum de précautions.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utiliser CURL pour un site ayant la protection cloudflaire
    Par jil72540 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 22/08/2019, 08h29
  2. [MySQL] Module menus pour mes sites
    Par okoweb dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 03/10/2011, 17h12
  3. Utiliser Git pour son site web
    Par flea21 dans le forum Linux
    Réponses: 0
    Dernier message: 01/08/2010, 18h45
  4. Recherche un hébergement pour mes sites
    Par matinho dans le forum Domaines
    Réponses: 10
    Dernier message: 09/04/2008, 21h34
  5. Réponses: 1
    Dernier message: 26/01/2007, 16h13

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