Partage
  • Partager sur Facebook
  • Partager sur Twitter

Symfony - Twig obligé ?

Sujet résolu
    8 mars 2024 à 12:47:28


    Bonjour,

    Faisant du PHP depuis très longtemps, de la POO depuis 6 ans sous Code Igniter, je dois commencer à utiliser Symfony.
    L'installation OK (après quelques galères), je peux commencer à coder.
    Sauf que ... pour afficher le rendu, il semble qu'il faut passer par Twig ?

    Bon, pourquoi pas. J'ouvre la page et là ... "AU SECOURS !!"
    C'est quoi ce truc ?! C'est illisible.

    Ni une, ni deux, j'arrive ici

    Et là, je suis désolé, mais à part complexifier une roue qui existe déjà ... Pas d'intérêt particulier !!

    Afficher une expression ({{...}}) :

    Hello <?php echo $name; ?> !!
    Hello <?= $name; ?> !!


    les actions (avec {%%}) sont surtout des boucles (for, foreach, while) et conditions (switch, if elseif else) déjà utilisables par défaut. Et définir dans la vue quelque chose qui est en principe setté et transmis depuis le controller ?

    les commentaires ({# ... #}) mais lol quoi! On a déjà "/**/" pour un bloc complet ou // pour une ligne en php.

    • Partager sur Facebook
    • Partager sur Twitter
    Winter Is Coming - Explorez le forum : votre problème a déjà dû être traité ailleurs
      8 mars 2024 à 13:32:03

      Salut

      Au final, tu as une question ou tu souhaites simplement exprimer ton désespoir de devoir continuer à apprendre ?

      Je pense que tu peux regarder les premières lignes de cette page de la documentation pour Symfony 4.x.

      A noter que Twig n'invente presque rien, c'est une syntaxe qui te sera utile si tu te mets à Drupal, PrestaShop et d'autres dont je ne me rappelle plus, ou même à Python avec Django, pour t'en citer quelques uns.
      Et les autres frameworks PHP permettent souvent d'utiliser ce même moteur de templates. L'avantage étant que justement, cela renforce le côté MVC en évitant les manipulations qu'on serait tenté de faire en PHP dans une vue, et du coup on les centralise dans les contrôleurs ou on externalise cette logique ailleurs.

      • Partager sur Facebook
      • Partager sur Twitter
        8 mars 2024 à 15:41:14

        @Ymox la 2e.

        Merci pour le lien que je vais aller visiter de ce pas. :)

        Je trouve dommage qu'on nous pousse à apprendre un truc soi-disant "révolutionnaire" alors qu'au final, si on a un code propre, bien organisé et maintenu, on en a pas forcément besoin. Effectivement, si un jour je dois faire du Drupal ou Prestashop, je devrais probablement y passer. Mais d'ici-là, on aura inventé de nouveaux langages "magiques" :lol:

        Je passe en résolu.

        --

        Je viens d'aller dessus et on voit le forcing direct :

        PHP templates have been deprecated in Symfony 4.3 and they will no longer be supported in Symfony 5.0. Use Twig templates instead.



        -
        Edité par rga 8 mars 2024 à 15:44:25

        • Partager sur Facebook
        • Partager sur Twitter
        Winter Is Coming - Explorez le forum : votre problème a déjà dû être traité ailleurs
          8 mars 2024 à 18:12:55

          Ben voilà, bienvenue dans le monde de l'informatique. Pour rappel, Microsoft fait le forcing pour que les utilisateurs depuis Windows 11 aient un compte Microsoft en ligne plutôt qu'un simple compte local — et Apple n'a à ma connaissance pas de solution de contournement disponible qui soit encore valable, et c'est ainsi depuis bien plus longtemps encore… mais on n'est pas passé sous Linux pour autant, si ?

          Tu ferais du Vue.js, du React, de l'Angular ou encore du HTMX, si la base est du JavaScript, il y a déjà des spécificités du fait de Node.js, (et pour Angular, c'est du TypeScript, qui est une forme de JavaScript typé), mais cela mis à part, chacun de ces frameworks a sa syntaxe de "templating" aussi. Pourtant, pour le web, on n'a pas encore d'alternative au HTML, et au moins là, c'est déjà quelque chose que tu maîtrises.

          Et j'aurais envie de te faire prendre conscience : si tu te sens suffisamment à l'aise en PHP pour te lancer dans Symfony (ce que je pense sincèrement, après 6 ans de pratique), c'est que tu es prêt à apprendre plus. Profites-en pendant que tu es encore capable !  :)

          Il y a un truc que j'ai supprimé précédemment quand j'ai voulu faire plus concis, c'est que si la syntaxe de Twig n'invente presque rien, c'est parce qu'elle est inspirée de Django et son outil de templating Jinja, justement.

          J'ai moi aussi fait l'erreur de me dire que PHP suffisait. Puis on m'a fait me rendre compte que je manipulais à côté le HTML, le CSS, du SCSS, du JavaScript et du SQL (MySQL, PostgreSQL, TransactSQL). Passer à Node.js s'est fait sur le tard en ce qui me concerne, mais je m'y suis mis. Pour l'historique plus complet : au tout départ, j'ai commencé à coder dans un Basic très spécifique, j'ai appris la programmation orientée objet avec Java. D'aucuns trouveraient ce bagage plutôt hétéroclite, je préfère le voir comme une richesse qui me conforte dans la possibilité d'apprendre plus facilement la syntaxe d'un "nouveau langage". Au final, tu sais programmer, si un jour prochain PHP venait à totalement disparaître, tu saurais t'adapter.

          Au passage, Twig n'est pas « soi-disant "révolutionnaire" », vu qu'il n'a pas de vie et ne peut ainsi pas être aussi vantard de lui-même.  :p

          • Partager sur Facebook
          • Partager sur Twitter

          Symfony - Twig obligé ?

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          • Editeur
          • Markdown