<?php VS <?=

Résolu
Bonjour,
Je voudrais savoir la difference entre les deux directives <?php et <?=
normalement <?php ?> c'est pour taper du code PHP, mais <?= jamais vu o_O
et parfois je trouve ça : <?=! empty($var) ? $var : 0;?>

Est qu'il y a quelqu'un qui peut m'expliquer ceci !
Mercii d'avance

9 réponses

  1. PHP: empty - Manual
    empty() ne vérifie que les variables, toute autre chose retournera une erreur d'analyse. En d'autres termes, ce qui suit ne fonctionne pas...
    <?php ?> c'est php 5
    <? ?> c'était avant...
    0
    1. merci pour ta réponse, en fait je sais comment utiliser empty(), mais le probleme c'est que je l'ai jamais utilisé de cette maniere <?=! empty($var) ? $var : 0;?>
      je pense qu'il s'agit d'un test, si $var n'est pas vide on affiche $var sinn on affiche 0, c'est peut etre ça, qu'est ce que vous en pensez !!
      0
      1. Bonjour,

        ce = après le ? m'intrigue

        j'ai cherché mais pas trouvé à quel langage il pourrait se référer.

        sinon entre <?php et <? il y a une différence au niveau de la sécurité (je me rappel plus des détails) et sur certains serveurs web <? n'est pas reconnut comme des balises php et donc rien n'est interprété mais cela ne reste que de la config. un petit tour dans les .ini et ça se gère.

        0
        1. Bonjour

          le <?= était un raccourci pour <?php echo
          Je croyais qu'il avait disparu depuis longtemps.
          0
          1. Je confirme la reponse du "pere", <?= n'est autre qu'un raccourcis de <?php echo qu'on peut encore trouver parfois pour ecrire plus vite ou pour que ca prenne moins de place (j'le croisais surtout quand on mixait html/php pour ne pas avoir trop de php au milieu du html..)
            0
            1. on en apprend tous les jours ^^
              0
              1. C'est dans la doc PHP :
                http://www.php.net/manual/fr/language.basic-syntax.phpmode.php
                0
            2. <?= "test" ?>

              devrait afficher test?

              marche pas
              0
              1. C.f la doc : "Les balises courtes (troisième exemple) ne sont disponibles que s'elles ont été activées via la directive short_open_tag du fichier de configuration php.ini, ou si PHP a été configuré avec l'option --enable-short-tags ."
                0
            3. Tu as lu la page du manuel que je t'ai indiquée ? Il faut que les balises courtes aient été activées au niveau du serveur, ce qui était le cas par défaut autrefois mais ne l'est plus aujourd'hui.
              0
              1. RTFM comme on dit !
                0
              2. RTFM, je ne connaissais pas, je viens de demander à Google. C'est vrai qu'on en apprend tous les jours :)
                0
              3. On aura tous appris au moins quelque chose sur ce topic alors ! ;)
                0
              4. ouai ok c'est vrai j'aurais du le lire avant de poster xD. sympa le RTFM, je vais l'utiliser je crois lol
                0
            4. Je vous remercie trèèès chaleureusement pour toutes ces infos :)
              A+
              0