Fork me on GitHub

Rapport de message :*
 

INFO : code PHP très interressant

Titre du sujet : INFO : code PHP très interressant
par alain01 sur 21/03/2006 12:14:30

Salut,

En allant au weekend AFUX, lors d'une conversation j'ai fait part d'un "truc" que j'utilise pour utiliser des pages "modèles".
Voici les infos :

Pour les supers développeurs (dont je ne fais pas parti) voici une commande qui pourra en ravir plus d'un.

Cela permet de créer des modèles de pages dont les variables peuvent changer (heuun, à bien y réfléchir, c'est du smarty sans smarty, non ?)


Reprise de conversation :
Citation :
Explication :
je déclare dans un fichier language/french/global.php ceci :

define ("_RUBRIQUE_1","Ma rubrique numero 1");
define ("_RUBRIQUE_2","Ma rubrique numero 2");

dans un autre fichier affichage.php j'ai :
<?php
include (XOOPS_ROOT_PATH."/mespages/language/french/global.php");

<?php
foreach ($_GET as $cle => $valeur)
{
$$cle=$valeur;
}
echo "Titre de la rubrique : "._RUBRIQUE_."$rub </BR>";
echo "Rubrique fixe ok : "._RUBRIQUE_1."</BR>";
echo "Numero rubrique : ".$rub;
?>

Le résultat pour affichage.php?rub=2 :
Titre de la rubrique : _RUBRIQUE_2
Rubrique fixe ok : Ma rubrique numero 1
Numero rubrique : 2

En conclusion, si la variable est indiquée en dur, ça marche, si je tente de jouer sur le nom de la variable, j'ai l'affichage du nom de la variable, et pas sa valeur...

Comment puis-je obtenir la valeur de la variable et non son nom ?
Imaginons que j'ai _RUBRIQUE_9, je voudrais donc afficher la valeur de _RUBRIQUE_9 en utilisant toujours _RUBRIQUE_0."$rub

j'ai tenté :
$num=sprintf("%d",intval($_GET['rub']));
$nom="_RUBRIQUE_".$num;
$contenu=$$nom;

mais $contenu ne renvoi rien !!!
Je n'ai plus de piste...


Réponse :
Citation :
Tu dois utiliser la fonction constant() qui permet de lire la valeur
d'une constante dont le nom est dynamique:

echo "rubrique : " . constant("_RUBRIQUE_0" . $rub) . " </BR>";


Ex :
echo "<font color='#CCFFFF'>".constant($niveau."_m_2_".$saison)."</font>


je peux fournir des exemples pour ceux que ça interresse
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

70 Personne(s) en ligne (52 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 70 | Plus ...