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

Langage PHP Discussion :

Que signifient ces balises php à l'intérieur d'un script php ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Architecte technique
    Inscrit en
    Avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Avril 2017
    Messages : 29
    Par défaut Que signifient ces balises php à l'intérieur d'un script php ?
    Bonjour,

    J'ai trouvé un bout de code qui pourrait m'être utile pour réaliser un petit script. Mais je vois dans ce bout de code un truc qui m'échappe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        public static function myContent ()
        {
    		$p = '<?php $id = $_ctx->posts->post_id;
    		echo $id ?>';
    		return $p;
        }
    Qu'est-ce donc que ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    		<?php $id = $_ctx->posts->post_id;
    		echo $id ?>
        }
    C'est la première fois que je vois une balise <?php ?> s'immiscer à l'intérieur d'une autre balise <?php ?>
    Qu'est-ce que ça signifie ?

    Merci d'avance pour vos lumières.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Cette chaine est sûrement passée à la fonction eval() ensuite.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Architecte technique
    Inscrit en
    Avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Avril 2017
    Messages : 29
    Par défaut
    Salut sabotage,

    Je viens de lire la doc au sujet de cette fonction eval() que tu évoques. Je n'ai pas bien compris l'utilité de cette fonction qui parait être déconseillée.
    Ceci dit, ça pourrait bien être pour user de cette fonction que ces <?php ?> sont imbriquées, car le script en question est supposé insérer un bout de code personnalisé à l'intérieur d'un code d'affichage déjà existant (remplacer le contenu d'un billet par un autre contenu).

    Le code sera exécuté dans le scope du code appelant la fonction eval(). Aussi, toutes les variables définies ou modifiées dans l'appel à la fonction eval() resteront visibles après la fin de l'exécution de la fonction.
    "Scope du code" ?
    Il s'agit donc d'insérer des variables dont la valeur sera affectée par la fonction qui les appelle, mais sans pour autant que ces variables ne disparaissent à la fin de la fonction... Hem...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    non cela veut seulement dire que le code fourni à eval() est executé comme s'il était inclu.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Homme Profil pro
    Architecte technique
    Inscrit en
    Avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Avril 2017
    Messages : 29
    Par défaut
    On pourrait donc changer ce morceau de code <?php ?> par un require_once() ?

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    en gros: require() insère du code provenant d'un fichier ; eval() insère du code provenant d'une chaine.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Que signifient ces lignes ?
    Par tapoza dans le forum Débuter
    Réponses: 10
    Dernier message: 11/01/2012, 23h06
  2. Que signifient ces messages d'erreurs ?
    Par dida_plt dans le forum Débuter
    Réponses: 5
    Dernier message: 04/12/2011, 13h45
  3. Que signifie ces lignes de codes ?
    Par Gnap69 dans le forum Débuter
    Réponses: 2
    Dernier message: 12/04/2010, 20h27
  4. Que signifie ces éléments dans l'interface graphique?
    Par flet le kid dans le forum Débuter
    Réponses: 2
    Dernier message: 01/05/2009, 19h33

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