Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Templates > phplib et phpBB
phplib et phpBB Forum d'entraide sur les moteurs de templates phplib et phpBB. Avant de poster -> FAQ gabarits phpBB2, Cours phpBB2 et Sources phpBB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/12/2006, 18h23   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 48
Points : 13
Points : 13
Par défaut [phpBB 2] Insérer une variable dans un fichier langue

Bonjour tout le monde,

J’utilise le moteur de Template phpbb. Pourquoi celui là plutôt qu’un autre ? J’ai tout simplement trouvé un bon tuto.


Mais là j’ai un souci qui reviens de temps en temps, c’est insérer une variable au milieu d’une phrase.

Je vais prendre un exemple :

Index.php
Code :
1
2
3
4
5
6
7
$template = new Template($themes);
$template->set_filenames( array('Index' => 'Index.tpl'));
$template->assign_vars( array(
	'TITRE' => $langue['titre_index'],
));
 
$template->pparse('Index');
Index.tpl :Langue_fr.php :
Code :
$langue['titre_index''] = 'Bonjour  $membre['membre_login'], tu es le bienvenu’;

Comment faire pour ne pas avoir ce genre de charcutage :

Index.php
Code :
1
2
3
4
5
6
7
8
$template = new Template($themes);
$template->set_filenames( array('Index' => 'Index.tpl'));
$template->assign_vars( array(
	'TITRE_ DEBUT ' => $langue['titre_index_debut'],
	'MEMBRE_LOGIN ' => $membre['membre_login'],
	'TITRE_ SUITE ' => $langue['titre_index_suite'],
 
));

Index.tpl :
Code :
<h1>{TITRE_DEBUT}{MEMBRE_LOGIN}{TITRE_SUITE}</h1>
Langue_fr.php :
Code :
1
2
$langue['titre_index_debut''] = 'Bonjour ;
$langue['titre_index_suite''] = ', tu es le bienvenu’;

Y'a t-il une solution ? Pouvez-vous m'aider ?

Merci d'avance
Sparktacus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2006, 19h46   #2
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Il existe bien une solution super pratique :

Code :
$langue['titre_index''] = 'Bonjour  %s, tu es le bienvenu’;
et le code qui va avec :
Code :
'TITRE' => sprintf($langue['titre_index'], $membre['membre_login']);
Ca fait longtemps que j'ai pas utilisé phpBB, et donc il se peut que l'écriture de sprintf ne soit pas correcte. Si c'est le cas fais moi signe
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2006, 20h00   #3
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 48
Points : 13
Points : 13
Citation:
Envoyé par Kerod
Ca fait longtemps que j'ai pas utilisé phpBB, et donc il se peut que l'écriture de sprintf ne soit pas correcte. Si c'est le cas fais moi signe

Merci la suite de l'épisode l'an prochain
Sparktacus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2007, 04h54   #4
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 48
Points : 13
Points : 13
J'aurais mis presque un an à comprendre le truc ^^

Et oui hier je suis retombé sur un truc du genre, mais avec quelque explication en plus.
Il faut aller voir la documentation de sprintf.

s : l'argument est traité et présenté comme une chaîne de caractères.
Sparktacus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h29.


 
 
 
 
Partenaires

Hébergement Web