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 signifie $ en php ?


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de Gaulouis
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2015
    Messages : 252
    Points : 476
    Points
    476
    Par défaut Que signifie $ en php ?
    Bonjour,

    J'avais lu que le "$" devant les variable php venait du langage perl.

    Mais quel est sont utilité, sa signification ?

    Cldt

  2. #2
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 912
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 912
    Points : 6 705
    Points
    6 705
    Par défaut
    Je ne suis pas dans le secret des dieux mais je pense qu'il s'agit simplement d'un choix syntaxique, l'avantage étant qu'en préfixant les variables avec un $ on évite des potentielles collisions de nommage avec les instructions, constantes et noms de fonctions.

    À noter que contrairement à Perl, il n'y a pas en PHP toute la ribambelle de variables "contextuelles" ou prédéfinies comme $_ $/ $' ... ni de préfixe spécial pour les tableaux @ ou les hashs % (qui n'existent d'ailleurs pas en PHP, le truc le plus approchant serait la classe Ds/Set ou encore les bons vieux tableaux associatifs, mise à part que l'ordre des éléments est conservé).

    On trouve aussi $0 $1 $2... pour figurer le contenu des groupes de capture dans la pattern de remplacement de preg_replace (mais absolument pas en dehors de celle-ci comme en Perl). Mais cette "micro-syntaxe" provient de PCRE, pas de PHP.

    À noter qu'on retrouve aussi le $ en BASIC pour les chaînes de caractères mais cette fois-ci en suffixe.

    En résumé, en PHP, c'est juste un indicateur de variables.

  3. #3
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 269
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 269
    Points : 8 568
    Points
    8 568
    Billets dans le blog
    17
    Par défaut
    Utilité pratique, avec le $ on peut facilement embarquer des variables dans les chaînes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $buffer = "Résultat : $count lignes";
    C'est aussi une manière de distinguer les variables des constantes.

  4. #4
    Membre confirmé Avatar de Gaulouis
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2015
    Messages : 252
    Points : 476
    Points
    476
    Par défaut
    Merci pour vos réponses.
    J'ai trouvé un lien qui en parle et qui vous corrobore : https://docs.php.earth/faq/intro/dollar-sign/.

    Personnellement, je vois le sigil( $) comme un sucre syntaxique ajouté au langage C/C++ permettant d'omettre le typage fort.

    Comprenez que je ne partage pas la vision de Zeev Suraski
    https://php.developpez.com/actu/2740...plus-avancees/



    Pour moi PHP c'est déjà du C/C++ augmenté( même si toute les fonctionnalité du C/C++ n'ont pas été implémente par zend)

    Bref, je me demandais s'il y avais des personnes qui partagent cette même vision.

Discussions similaires

  1. Réponses: 13
    Dernier message: 15/04/2017, 16h24
  2. Que signifie "Error : Data truncation" ??
    Par BouB dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/05/2005, 17h20
  3. [SQL6]Que signifie ce LEFT ?
    Par guy2004 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 30/01/2005, 20h18
  4. Que signifie Pagesize ?
    Par anthony70 dans le forum Débuter
    Réponses: 3
    Dernier message: 31/08/2004, 14h31
  5. Que signifier $0 et $@
    Par jaabouc dans le forum Linux
    Réponses: 6
    Dernier message: 01/06/2004, 16h17

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