Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1529 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Template ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Template ?

n°763276
PACMaN2002
Posté le 14-06-2004 à 19:18:37  profilanswer
 

Salut,
C'est la première fois que je fais des templates et j'ai un petit problème, voila ce qu'il y a dans mon fichier php :
 

Code :
  1. <?php
  2. $template = "template1";
  3. array(
  4. 'TEMPLATE' => '$template');
  5. include("template.tpl" );
  6. ?>


Dans mon fichier template.tpl :
 

Code :
  1. {TEMPLATE}


 
Malheureusement, à l'affichage, je vois {TEMPLATE} au lieu de template1...

mood
Publicité
Posté le 14-06-2004 à 19:18:37  profilanswer
 

n°763283
T509
$job-&gt;GetJob(now)
Posté le 14-06-2004 à 19:24:26  profilanswer
 

Pas compris ton souci
 
Sois plus précis dans ta demande. Quel est l'utilisation exacte que tu veux en faire ?
Comment penses tu que cela fonctionne ?
Donne plus de code


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
n°763288
PACMaN2002
Posté le 14-06-2004 à 19:29:25  profilanswer
 

Ben en fait, je voudrais faire afficher la variable $template dans le fichier template.tpl, or je sais que seuls les fichiers PHP peuvent le faire. Cependant, j'ai analiser un script de phpbb et je vois que pour faire afficher leur variable sur le browser à travers un fichier .tpl, ils font comme ça :  
array('TEMPLATE' => '$template');  
dans le fichier php et après ils mettent {TEMPLATE} dans un fichier template (ca devrait afficher la valeure de la variable $template).

n°763297
T509
$job-&gt;GetJob(now)
Posté le 14-06-2004 à 19:42:57  profilanswer
 

Il y a toute une machine là derrière.
Tu as du rater du code de phpBB.
 
Pour aller en simplifiant, regarde en détail la fonction preg_replace()
 
et étudies aussi cette fonction :

Code :
  1. <?php
  2. function applique_modele($motif, $remplacement, $ou) {
  3. $text = "";
  4. if (is_file($ou)) {
  5.  //cherche et remplace
  6.  $id = fopen($ou, "rb" );
  7.  while (!feof ($id)) {
  8.        $text .= fgets($id, 4096);
  9.       }
  10.       $text = preg_replace($motif, $remplacement, $text);
  11.       fclose($id);
  12. }
  13. return $text;
  14. }
  15. ?>


$motifs est un tableau contenant les motifs à remplacer dans ton fichier template
$remplacement est aussi un tableau qui contient le contenu à  afficher à la place des motifs
$ou est le fichier de template


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
n°763301
PACMaN2002
Posté le 14-06-2004 à 19:47:54  profilanswer
 

Ah donc le principe en fait c'est d'ouvrir le fichier, prendre son contenu et remplacer la ou il y a {TEMPLATE} par les informations. Très interessant :) bon, je vais voir ce que ca donne

n°763352
PACMaN2002
Posté le 14-06-2004 à 20:45:29  profilanswer
 

Ca marche parfaitement :jap:


Message édité par PACMaN2002 le 14-06-2004 à 20:49:34
n°763687
reddwarf
gazzz
Posté le 14-06-2004 à 23:53:22  profilanswer
 

tu peux aussi utiliser les bibliotheques de fonction pear qui t evite de parser le fichier a chaque fois  
 
tu ouvres ton template et tu fais un setVariable('nom_variable_dans_template',$variable)
 
+ d infos ici http://pear.php.net/
 

n°764531
KrisCool
“Verbeux„
Posté le 15-06-2004 à 15:17:06  profilanswer
 

En template Smarty est également une solution intéressante :  
http://smarty.php.net
 
(notamment quand vous avez des problèmes de version pear/php avec votre hébergeur sur un hébergement mutualisé qui fait que vous ne pouvez pas utiliser correctement Pear).


Message édité par KrisCool le 15-06-2004 à 15:18:00
n°769663
reddwarf
gazzz
Posté le 19-06-2004 à 00:08:57  profilanswer
 

Kriscool a écrit :

En template Smarty est également une solution intéressante :  
http://smarty.php.net
 
(notamment quand vous avez des problèmes de version pear/php avec votre hébergeur sur un hébergement mutualisé qui fait que vous ne pouvez pas utiliser correctement Pear).

tres interessant smarty  je connaissais pas  merci  :jap:

n°773903
PunkRod
Digital Mohawk
Posté le 23-06-2004 à 10:07:27  profilanswer
 

smarty est assez excellent. j'utilise plus que ça et je pourrais pas revenir en arrière (je viens de poster le même genre de message à l'instant dans un autre sujet ! :) )

mood
Publicité
Posté le 23-06-2004 à 10:07:27  profilanswer
 

n°773926
karamilo
Posté le 23-06-2004 à 10:16:40  profilanswer
 

Il est pas mal mais il est très très lourd ...
J'ai développé un moteur de templates du meme acabit que smarty mais en beaucoup beaucoup plus léger. Je le mettrais en gpl dans quelques temps.

n°774003
PunkRod
Digital Mohawk
Posté le 23-06-2004 à 11:01:56  profilanswer
 

Si c'est vrai joli travail.
 
mais bon smarty y a quand même un système de précompilation, de cache etc. qui optimise les pages. les temps d'exécution restent très bas.
 
plus tout le "langage" smarty et ses plugins, ça fait quand même un sacré logiciel.
 
personnellement je ne le trouve pas si lourd. j'ai même testé le temps d'exécution des pages, une fois la page en cache (après la première 'compilation') c'est extrèmement rapide. On voit même la différence sur les pages où il y a les requêtes mysql, avec une légère augmentation du temps d'exécution (ça reste négligeable quand même).


Message édité par PunkRod le 23-06-2004 à 11:03:59
n°774023
karamilo
Posté le 23-06-2004 à 11:10:35  profilanswer
 

j'ai aussi fait un systeme de caches tres pousses, et niveau rapidite, mon moteur n'a rien a envier a smarty ;)

n°774043
Ex-Floodeu​r
La Source
Posté le 23-06-2004 à 11:19:56  profilanswer
 

c'est lourd les templates.. C'est ce qui me rebute à en faire pour mon site :/


---------------
Saint Seiya  || La Livebox || Europe, débats, réflexions
n°774475
PunkRod
Digital Mohawk
Posté le 23-06-2004 à 16:04:16  profilanswer
 

sur quoi vous vous basez pour dire que c'est "lourd" ?
 
temps de chargement/compilation ?
difficile à mettre en oeuvre ?
 
ou juste pas envie de faire face au changement... ?

n°774659
Ex-Floodeu​r
La Source
Posté le 23-06-2004 à 17:57:33  profilanswer
 

temps de chargement et utilisation cpu


---------------
Saint Seiya  || La Livebox || Europe, débats, réflexions
n°776152
PunkRod
Digital Mohawk
Posté le 24-06-2004 à 15:26:59  profilanswer
 

ah... la charge cpu j'ai pas testé, mais niveau temps de chargement smarty c'est d'la balle :o :)

n°777207
karamilo
Posté le 24-06-2004 à 23:38:00  profilanswer
 

t'as pas du tester beaucoup de moteurs de templates ...

n°777223
*syl*
--&gt; []
Posté le 24-06-2004 à 23:44:27  profilanswer
 

Moi j'me casse pas la tête, ça fait la même chose que smarty et c'est très rapide : j'ai une classe template à instancier, celle-ci "include" le fichier template choisi et c'est tout.. Ce fichier contient simplement le XHTML avec des <?= $this->values['test'] ?> aux endroits dynamiques.. Pour les tableaux par ex, une boucle en PHP directement incluse dans le template fait l'affaire, c'est très propre et très performant je trouve..

n°777226
T509
$job-&gt;GetJob(now)
Posté le 24-06-2004 à 23:45:43  profilanswer
 

Tu nous en fais profiter ?


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
n°777327
KrisCool
“Verbeux„
Posté le 25-06-2004 à 01:58:39  profilanswer
 

*Syl* : tout le monde peut faire la même chose que Smarty puisqu'au final Smarty ne fait rien d'autre que de générer un script php =)

n°777406
*syl*
--&gt; []
Posté le 25-06-2004 à 09:33:44  profilanswer
 

KrisCool a écrit :

*Syl* : tout le monde peut faire la même chose que Smarty puisqu'au final Smarty ne fait rien d'autre que de générer un script php =)

J'suis au courant, je l'avais testé quand je cherchais un moteur de templates, j'le trouvais rapide & sympa mais j'préférais quand même ma solution :D

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Template ?

 

Sujets relatifs
template et vargsProbleme spécialisation de template
fonctions templateSoucis avec un template...
[PHP] Template IPB[C++/Template] Problème d'organisation des fichiers ?
mettre des template dans rational roseParametre template sous forme de chaine de caracteres
getline, problème de template ??[Perl] Générer des pages html via template...
Plus de sujets relatifs à : Template ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR