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] déclaration de variable dans une classe...pourquoi ?


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 41
    Points : 40
    Points
    40
    Par défaut [POO] déclaration de variable dans une classe...pourquoi ?
    salut à tous...

    je débute dans l'écriture de classe j'ai donc commencé par écrire une toute simple qui me permet d'interroger une bdd...bon voilà

    j'aimerais savoir à quoi sert la déclaration des variables en début de classe ? parce que dans mon code qu'elles soient présentes ou pas ne change rien au result
    mon code:
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    Class article
    {
    var $ok;
    var $res;
    var $nbres;
    var $msg;
    function article()
    {
    $this->ok = -1;
    }
    function lire_article($deb, $fin)
    {
    include ("conn.inc.php");
    $sql = "SELECT id, titre, contenu, auteur, datepub ";
    $sql .= "FROM articles ";
    $sql .= "LIMIT $deb,$fin;";
    if ($result = $mysqli->query($sql))
    {
    $row_cnt = $result->num_rows;
    if ($row_cnt == 0) 
    {
    $this->ok = -1; 
    }
    else
    {
    $this->ok = 1; 
    //$this->msg = "todo bene";
    while($fetch = $result->fetch_array(MYSQLI_ASSOC))
    {
    $ret[] = $fetch;
    }
    $this->res = $ret;
    $this->nbres = $row_cnt;
    }
    $result->close();
    }
    else
    {
    $this->msg = "Erreur query";
    }
    $mysqli->close();
    }
    // fin class
    }
    $monArticle = new article();
    $monArticle->lire_article(0, 5);
    $nb = $monArticle->nbres;
    $obj_to=$monArticle->res;
    for ($x=0; $x<$nb; $x++)
    	{
    	print $obj_to[$x]['id']." - ";
    	print $obj_to[$x]['titre']." - ";
    	print $obj_to[$x]['contenu']." - ";
    	print $obj_to[$x]['auteur']." - ";
    	print $obj_to[$x]['datepub'];
    	print "<br />\n";
    	}
    cela m'affiche correctement les données de ma table !
    donc il y a surement qq chose qui cloche ?
    merci pour aide

  2. #2
    Membre éprouvé
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Points : 1 164
    Points
    1 164
    Par défaut
    Salut,

    les variables que tu cites ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var $ok; 
    var $res; 
    var $nbres; 
    var $msg;
    sont des propriétés de ta classe article.

    Si tu n'à pas correctement compris cette notion tu devrais étudier un peu de théorie avant de vouloir écrire des classes.

    Pour cela :
    http://www.google.fr/search?hl=fr&q=programmation+orient%C3%A9e+objet+PHP&meta=
    http://www.google.com/custom?q=progr...developpez.com

    Quand à savoir pourquoi tes propriétés sont qd même accessible même si elles ne sont pas déclarées, je pense que c'est dû à la l'habituelle permissivitée (c'est francais ce mot ? :o) de PHP...

    Et ceci est définitivement une habitude à proscrire car ton code perds en lisibilité si tu ne déclares pas clairement les propriétés de ta classe.

    Bye

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 41
    Points : 40
    Points
    40
    Par défaut
    merci...je vais fouiller et approfondir !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#2005] Stocker des variables dans une classe
    Par Herlece dans le forum Windows Forms
    Réponses: 7
    Dernier message: 13/10/2008, 10h30
  2. Réponses: 4
    Dernier message: 06/09/2008, 11h53
  3. [AS2]Visibilité de variable dans une class
    Par ViveLesQuads dans le forum ActionScript 1 & ActionScript 2
    Réponses: 6
    Dernier message: 06/12/2007, 16h47
  4. [POO] Variable dans une classe
    Par Space Cowboy dans le forum Langage
    Réponses: 3
    Dernier message: 15/02/2007, 20h23
  5. Ajout d'une variable dans une class fait planter
    Par Geoff-sk8 dans le forum C++
    Réponses: 4
    Dernier message: 11/10/2006, 14h27

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