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

Affichage des résultats du sondage: Quel système de template utilisez/utiliseriez - vous ?

Votants
147. Vous ne pouvez pas participer à ce sondage.
  • PHPLib

    42 28,57%
  • VTemplate

    5 3,40%
  • Smarty

    81 55,10%
  • ModeliXe

    10 6,80%
  • PowerTemplate

    1 0,68%
  • PHPTemplate

    5 3,40%
  • Xtemplates

    2 1,36%
  • EcTemplate

    0 0%
  • UltraTemplate

    0 0%
  • Itemplate

    0 0%
  • Quick Template

    1 0,68%
  • YATS

    0 0%
Bibliothèques et frameworks PHP Discussion :

[Templates] Quel système utilisez-vous ? Pourquoi ?


Sujet :

Bibliothèques et frameworks PHP

  1. #161
    Nouveau Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1
    Points : 1
    Points
    1
    Par défaut nommage dynamique des elements dans flexy
    Il manque pour le moment la capacité a rajouter une balise (genre un menuitem comme il le fait déjà pour les options de select d'un formulaire) mais je sais qu'il y travail dessus en ce moment.
    Moi je trouve flexy super propre et rapide et j'ai aussitot refait entierement mon pti portail avec.
    toutefois, je trouve qu'il manque la capacité d'utiliser des noms dynamiques sur les elements.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->elements[$this->var]->setValue("mavaleur")
    sur un template contenant :
    car apparamment, les elements sont compilés avant les {var}.
    j'ai ce probleme car je ne prefere pas utiliser quickform ...
    si quelqu'un a une solution d'ailleurs ...
    j'ai fouillé dans les options de compilation mais je trouve po.

  2. #162
    Membre du Club
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2003
    Messages : 89
    Points : 47
    Points
    47
    Par défaut
    Auriez vous des sites ou des docs PHP pour débuter dans les Template et connaitre bien voir très bien le sujet par la suite ?

    Merci d'avance

  3. #163
    Membre chevronné
    Avatar de Bidouille
    Inscrit en
    Mars 2003
    Messages
    1 288
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 1 288
    Points : 2 009
    Points
    2 009
    Par défaut
    Citation Envoyé par glsn
    Auriez vous des sites ou des docs PHP pour débuter dans les Template et connaitre bien voir très bien le sujet par la suite ?
    Tu n'as qu'à lire ce fil !

  4. #164
    Membre actif
    Avatar de doof
    Inscrit en
    Août 2003
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 160
    Points : 294
    Points
    294
    Par défaut
    antoineb -> il me semble que le probleme se pose a cause du fait que tu mette justement {var} dans l'attribut d'un element de formulaire, là ou normalement il n'y en a pas besoin.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->elements[$this->var]->attributes['name'] = 'mavaleur';
    ne regle pas ton probleme ?

  5. #165
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 129
    Points : 127
    Points
    127
    Par défaut
    Il existe beaucoup de moteur de templates mais les approches de chaque moteur est souvent différentes.

    L'approche PHP natif. ( Melange de PHP dans du HTML )
    Solution tres performante et tres simple pour le developpeur. Par contre, pour le coté design c'est un peu la galère pour le designer.

    L'approche search&replace. ( Par affections de variables )
    Solution appréciée par le designer, le code du developpeur reste simple et organisé. Par contre, une baisse de performance de 20% par rapport a la solution native.

    L'approche par composants. ( Comme les lego quoi )
    Chaque composant de la page est independant. C'est un peu un casse tete pour le designer. Le travail du developpeur devient plus simple et plus organisé. Par contre, pas moyen d'avoir un apercu globale de la page avant de tester.

    L'approche par XML/XLST. ( Maximum Balises )
    Ressemble à l'approche precedente sauf que tout est decrit dans le XML. Le PHP genere le XML et le designer, avec ses connaissance de XLST, peut construire les pages. Cette approche est celle qi presente la meilleure pérennité malgré que le designer doit se former au XLST.


    Bon tout ca c'est bien gentil mais c'est pour dire quoi au final ?
    Sans doute rien IoI parce je pense que tout le monde a deviner que les moteurs de templates les plus puissants sont ceux ceux à approche "search & replace" tels que PHPLib et Smarty dont la différence se trouve dans la légèreté de PHPLib pour ses performances tandis que Smarty est une solution polyvalente donc moins performante.

    D'autres solutions sont a retenir, Modelixe( basé sur la syntaxe XML) et Templeet( qui melange moteur de template, systeme de publication et outil de gestion pour allier simplicité et performance )

    Bon je dois y aller, j'espere que cela va vous aider un peu si je me suis planté quelque part desole, je reviendrais pour corriger.

    A+ bonne apres midi

  6. #166
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    malgré que
    syntax error

  7. #167
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    euh... bien souvent "L'approche search&replace" consiste à générer du code PHP natif... donc la baisse de performances est quasiment inexistante.

  8. #168
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 129
    Points : 127
    Points
    127
    Par défaut
    PHP natif
    $titre = 'Mon titre';
    $description = 'Ma description';
    include 'template.php';

    /* template.php */
    <html>
    <head>
    <title> <? echo $titre; ?> </title>
    </head>
    <body>
    <? echo $description; ?>
    </body>
    </html>

    Search&Replace
    <?
    include_once 'moteur.php';
    $moteur = new moteur_de_template();
    $moteur -> setVar('titre', 'Mon titre');
    $moteur -> setVar('description', 'Ma description');
    $moteur -> display( 'template.html');
    ?>

    /* template.html */
    <html>
    <head>
    <title> {titre}</title>
    </head>
    <body>
    {description}
    </body>
    </html>

    Juste pour dire que l'approche search&replace utilise plus le processeur que le par le PHP natif d'ou sa baisse de performance.

    a+

  9. #169
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    non : Smarty "compile" les templates, c'est à dire qu'après les search/replace, le résultat est un script PHP qui est conservé tant que le template n'est pas modifié.
    Ainsi, il n'y a aucune perte de performances.

  10. #170
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 129
    Points : 127
    Points
    127
    Par défaut
    Pour repondre à kioob, c'est le systeme de cache qui permet cela. Ainsi, les performances sont optimisées, mais tous les moteurs à approche "search&replace" n'ont pas (ou pas encore) cette fonctionnalité.


    Et pour répondre à Moloc'h, le designer n'a pas forcement des compétences PHP pour utiliser la syntaxe du PHP contrairement à l'utilisation des {variables}.

  11. #171
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    Oui, on peut parler de système de cache... il n'en reste pas moins que le code exécuter sera du PHP natif ; et pour moi tout bon moteur de template se doit de le faire. Je n'en ai pas utilisés beaucoup, mais ils le faisaient tous.



    Moloc`h, de plus, dans mon cas un simple :
    pourra être remplacé par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $this->k_lang = & $this->k_mod->instance( 'k_lang' );
    echo htmlspecialchars( $this->k_lang->str('toto') );
    ?>
    Sachant que l'instanciation du module se fera une seule fois, de manière automatique.

    L'intérêt est déjà un peu plus visible... non ?

  12. #172
    FMC
    FMC est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 25
    Points : 19
    Points
    19
    Par défaut
    En espérant qu'il n'a pas déjà été cité, il y a aussi TPLN (Templates Pour Les Nuls), je ne l'ai pas testé car j'utilise PHPLib qui me semble suffisemment performant pour faire un site entier, mais TPLN avait l'air intéressant, et... OpenSource !

  13. #173
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    j'ai depusi longtemps suivi ce sujet.

    J'ai essayé différent moteur de templates "légers" (phpliub, template power et d'autres) ainsi que des moteurs de templates "lourds" (templeet et smarty notamment).

    Mon constat est que dans tout les cas, c'est au mieux ausssi rapide avec du cache que php seul sans cache ...

    De plus il est très possible d'utiliser php seul comme moteur de template. En fait une fois qu'on a la manière de penser "template", je pense qu'on peut très bien y arriver sans en utiliser, justement...

    De plus, l'équipe xml/xsl/css/php fonctionne bien elle aussi, et sépare également le contenu de la présentation.

    Je pense simplement que selon le niveau du développeur et ses gouts, il n'y a pas de faconde faire (template,php, xml/xsl) qui soit meilleur que l'autre. C'est juste différent.

    Maintenant, personnellement, j'ai bien aimé phplib, templeet et smarty.

    xml/xsl j'accroche pas des masses mais bon selon les cas ca peut etre intéressant comme système ...

  14. #174
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2004
    Messages : 99
    Points : 112
    Points
    112
    Par défaut
    Mon constat est que dans tout les cas, c'est au mieux ausssi rapide avec du cache que php seul sans cache ...
    Ca dépend de ce que fais ton php Si tu dois parser du xml à la pelle ou faire pleins de requetes sur des bases/sites distant, le cache est inévitable

    Perso j'ai retenu Smarty, le plus rapide à mon avis, facile de s'y mettre, et je peux faire tout ce dont j'ai besoin avec

  15. #175
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 130
    Points
    9 130
    Par défaut
    bon je suis peut être un peut violent

    mon php utilise Xtemplate pour faire du XML
    lui même est passé par XSLT pour en faire autre chose (PDF, SVG, HTML SOAP)

    mais à la place de Xtemplate j'envisage d'utilise XMLize (XML serialize : sérialisation d'objet en XML)


    comme avantage on peut très tôt tester son appli sans aucune interface.
    il suffit de fournir les antrés et de lire le XML produit
    on peut multiplier à l'envie les format de sorties
    pour chaque sorties voulue il suffit d'écrire un tempalte XSLT
    on peut envoyer le xml directement au client lorsque celui-ci sait le utiliser xslt

    le contre est qu'on ralenti la machine et
    il n'est pas toujours simple d'écrire les IHM avec XSLT

    Je zieute beaucoup vers AJAX pour cela.
    dans mon approche j'aurais donc d'un coté un serveur de page html (Ajax) statiques
    qui lorsque le client les manipule elles appellent mon serveur qui répond en XML (SOAP, ou autre)

    la séparation IHM client<->Data<->programme est totale.


    A+JYT

  16. #176
    Candidat au Club
    Inscrit en
    Juin 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Plus simple que Smarty, il y a SmartyLight
    http://www.paullockaby.com/projects/smarty-light/

  17. #177
    Membre à l'essai
    Inscrit en
    Décembre 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 17
    Points : 15
    Points
    15
    Par défaut
    Bonjour,

    Je ne pense pas qu'il a été posté alors voilà :
    http://www.massassi.com/php/articles/template_engines/

    J'ai découvert cet article en cherchant comment un template fonctionnait et j'avoue qu'il m'a appris bcp de choses.
    Le moteur de template n'utilise que php. Je veux dire par là qu'il n'y a pas de langage interne propre au moteur. Tout est en php.
    Dans l'article il dit que ca a déjà été fait (cf page 2 de l'article) mais je n'arrive pas à trouver d'autres exemples que le sien.
    Connaîtrez-vous un moteur similaire ?

    Je suis en train de l'utiliser pour un site et j'avoue qu'il n'est pas super facile.
    Voilà, si jamais il y en a un dans le même genre qui vous vient à l'esprit, faîtes moi signe

    Bonne journée

    Melmel

    Edit : J'ai trouvé celui-là :
    Savant2 : http://phpsavant.com/yawiki/
    Le connaissez-vous ?
    Je n'ai pas trouvé beaucoup d'articles qui en parlent sur le net. Je vais faire un essai aujourd'hui.

  18. #178
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 16
    Points : 89
    Points
    89
    Par défaut
    Pour ma part j'utilise TemplatePower (http://templatepower.codocad.com/) qui est simple, puissant et rapide d'excécution.

  19. #179
    Membre à l'essai
    Inscrit en
    Décembre 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 17
    Points : 15
    Points
    15
    Par défaut
    Bon, ca va faire une semaine que j'utilise Savant2(http://phpsavant.com/) et pour tout vous dire, il fait super bien son boulot, qui est de séparer la logique du design.

    Il est entièrement en php, la doc est très bien faite (en anglais) et il y a une version supérieure compatible php5.

    Ce que j'aime :
    - la façon de coder : tout est en php, pas besoin d'apprendre un nouveau langage propre au moteur de template.
    - la séparation du fichier 'design' du fichier 'logique' (requete sql, etc.).
    - la compatibilité avec php5 avec Savant3
    - le systeme de plugin
    - la possibilité d'utiliser un accélérateur php (Turck MMCache, Zend, php Accelerator).

    Ce que j'aime moins :
    - pas beaucoup de support. Il n'y a pas de forum. A la place, il y a une mailing-list.
    - la doc n'est qu'en anglais.
    - et c'est tout

    Donc voilà, si vous ne savez pas quoi prendre comme moteur de template, Savant2 vaut le coup.

    Bon lundi

    melmel

  20. #180
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    VTemplate !
    Pourquoi ? Parce que c'est celui que j'ai découvert au boulot et qu'il est reconnu comme étant simple et efficace.

    Et effectivement, j'en suis très content. On peut même taper des trucs du genre :
    PHP :
    $vtp->setVar($vtp_struct, "ZONE.VAR_PAGE_EN_COURS", "p".$pagemag);

    Template HTML :
    A#{#VAR_PAGE_EN_COURS} { text-decoration:none; background-color:Yellow; }
    ...qui change l'allure du lien en-cours de mon sommaire :
    <a id="p01" href="/index.php?page=01">Accueil</a>

    comme le précise la doc :
    Syntaxe : {#NomDeLaVariable}
    la syntaxe {NomDeLaVariable} a été abandonnée car elle posait des problèmes avec les feuilles de styles. Vous pouvez néanmoins revenir à cette synthaxe en modifant le Define ( par define("VARTAG","{"); )correspondant au début de la classe.
    (en fait, j'étais venu ici pour poser une question, mais VTemplate n'était pas la cause de mon bug J'ai donc dû éditer ce message...)

Discussions similaires

  1. Quel EDI utilisez-vous en 2012 pour le développement Web ? Pourquoi ?
    Par Community Management dans le forum Outils
    Réponses: 69
    Dernier message: 31/08/2016, 11h12
  2. Quels Frameworks utilisez-vous ? et pourquoi ?
    Par snipes dans le forum Android
    Réponses: 5
    Dernier message: 22/02/2013, 16h03
  3. Quel outil de supervision système utilisez-vous ?
    Par cyberzoide dans le forum Linux
    Réponses: 0
    Dernier message: 08/02/2013, 12h09
  4. Réponses: 8
    Dernier message: 10/11/2006, 20h33

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