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 :

POO, constantes différence Define et Const


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    graphisme & impression
    Inscrit en
    Mars 2011
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : graphisme & impression

    Informations forums :
    Inscription : Mars 2011
    Messages : 118
    Par défaut POO, constantes différence Define et Const
    Bonjour,

    J'ai une question pour la POO en PHP et plus particulièrement les constantes.
    J'ai déjà regarder sur le forum mais ma question est un peu tiré par les cheveux

    Je voudrais bien comprendre la différence entre define et const. Est-ce que le code ci-dessous est propre, j'avoue ne pas toujours comprendre ce qu'on peut faire et pas faire en php…
    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?php 
        class Test{
     
            public $ID_CONSTANT;
            // une constante static, donc propre à la classe
            // revient à faire en JAVA, public final static (int) ID?
            const ID_CONSTANT_STATIC = 2;
     
     
            public function __construct($paramID) {
                // une constante propre à l'instance de l'objet
                // revient à faire en JAVA public final (int) ID?
                define($this->ID_CONSTANT, $paramID);
            }
     
     
        }
    ?>
    Merci beaucoup pour vos réponses.
    très bonne journée à tous

  2. #2
    Membre chevronné
    Femme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2009
    Messages : 236
    Par défaut
    Bonjour,
    la réponse se trouve dans le manuel php: http://php.net/manual/fr/language.constants.syntax.php
    Voir particulièrement la note en bas de page concernant la différence entre ces deux syntaxes .
    bonne journée

  3. #3
    Membre confirmé
    Homme Profil pro
    graphisme & impression
    Inscrit en
    Mars 2011
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : graphisme & impression

    Informations forums :
    Inscription : Mars 2011
    Messages : 118
    Par défaut merci
    Bonjour,

    Merci beaucoup pour ta réponse c'est sympa! J'ai lu et j'avoue que ce n'est malheureusement pas vraiment ce que j'attends.
    Peux-tu lire les commentaires que j'ai mis dans mon code, je voudrais savoir si on déclare dans une class une variable avec const: est-elle static? Et si ma méthode pour déclaré une constante non static via le constructeur est elle propre?
    J'ai mis le fond de ma penser en JAVA car je comprends un peu mieux ce language

    Merci beaucoup

  4. #4
    Membre chevronné
    Femme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2009
    Messages : 236
    Par défaut
    Pour ce que je comprend:
    - const permet de définir des constantes définies à la compilation (telles que les variable de préprocesseur en C) et par extension se rapprocherait des final static (bien que je sois moins à l'aise en java).
    - define permet de définir des constantes à l'interieur d'une classe mais sa visibilité est tout de même globale.

  5. #5
    Membre confirmé
    Homme Profil pro
    graphisme & impression
    Inscrit en
    Mars 2011
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : graphisme & impression

    Informations forums :
    Inscription : Mars 2011
    Messages : 118
    Par défaut merci
    Bonjour,

    Merci pour ta réponse, je vais continuer à chercher un peu.
    Je te tiens au courant si je trouve quelque chose!

Discussions similaires

  1. [POO] Constante dans une classe
    Par Veneria dans le forum Langage
    Réponses: 5
    Dernier message: 22/12/2008, 16h33
  2. [POO] :: vs -> différence ou pas ?
    Par elvan49 dans le forum Langage
    Réponses: 8
    Dernier message: 21/05/2008, 12h38
  3. [POO] Constante créée comme une classe
    Par DJesus dans le forum Langage
    Réponses: 1
    Dernier message: 09/03/2007, 14h12
  4. Différences entre #define et const
    Par Tittom dans le forum C
    Réponses: 19
    Dernier message: 01/06/2006, 14h48
  5. [const] #define vs const
    Par Mokhtar BEN MESSAOUD dans le forum C
    Réponses: 34
    Dernier message: 22/12/2005, 18h46

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