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] A quoi sert l'attribut "accesses" de cette classe ?


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 115
    Points : 53
    Points
    53
    Par défaut [POO] A quoi sert l'attribut "accesses" de cette classe ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public function __construct($name, $password) 
    { 
      $this->name = $name;
      $this->password = $password;
      $this->lastLogin = time();
      $this->accesses++;
    }

    $this->accesses++; //ça sert quoi,si je supprime cette ligne,y a rien?

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Bonjour

    Le code que tu nous donnes est un constructeur de classe. Donc accesses est un attribut de la classe en question, qui apparemment s'incrémente de 1 lors de la création de l'objet.

    Pour le reste, sans informations, je ne peux pas donner d'explications.
    En revanche, j'aimerais connaitre le rapport avec mysql...
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 115
    Points : 53
    Points
    53
    Par défaut
    tout à fait,mais je ne sais pas pourquoi s'incrémente de 1 lors de la création de l'objet,je pense que c'est inscrémente automatiquement la date??Mais si je supprime cette ligne,y a rien??Comment je peux tester cette ligne?

    Je n'ai pas fait mysql,je test juste php pour comment ça marche,le code complet est
    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
     
    <?php 
     
       class User 
       { 
           //attribut
           public $name; 
           private $password, $lastLogin; 
     
           //méthode
           public function __construct($name, $password) 
           { 
               $this->name = $name; 
               $this->password = $password; 
               $this->lastLogin = time(); 
               $this->accesses++;
              //c'est ça je ne sais pas pourquoi,car si je supprime cette ligne,y a   rien changement
           } 
     
           // récuperer la dernière date
           function getLastLogin() 
           { 
               return(date("M d Y", $this->lastLogin)); 
           } 
       } 
     
     
       $user = new User("toto", "ohlala"); 
     
     
       print("$user->name<br>\n"); 
     
     
       print($user->getLastLogin() ."<br>\n"); 
     
     
    ?>
    si je ne trompe pas,"$this->accesses++"cette ligne peut définir comme $this->compteuser++;et il incremente le nombre de user et stoker dans la base de donnée????c'est pour ça si on regarde la page,on ne peut pas voir la résultat??

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    A priori acesses ne sert à rien, pour la simple et bonne raison qu'il n'est même pas défini comme attributs de classe.

    Théoriquement, si il était défini, ça ferait +1 par rapport à la valeur par défaut. En l'absence de définition et de valeur par défaut, ben euh...

    Mais je doute que ça modifie quoique ce soit dans la base.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 115
    Points : 53
    Points
    53
    Par défaut
    C'est vrai,mais pourquoi on doit utiliser $this->accesses++;il y a une bonne raison au moins???

  6. #6
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    Dans le code que tu nous montres, il y en a aucune!!!

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Points : 2 284
    Points
    2 284
    Par défaut
    Citation Envoyé par wang_xue Voir le message
    C'est vrai,mais pourquoi on doit utiliser $this->accesses++;il y a une bonne raison au moins???
    Il y à peut être une bonne raison, mais elle n'a pas était retranscrite dans le code
    En d'autres termes cela ne sert à rien, puisque ni les specs ni le code ne nous permet d'y donner un sens.

    bye

Discussions similaires

  1. <action ...> à quoi sert l'attribut ATTRIBUTE ?
    Par duke666 dans le forum Struts 1
    Réponses: 3
    Dernier message: 24/04/2008, 12h58
  2. A quoi sert l'attribut KEY
    Par scaleo dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 04/11/2006, 15h23
  3. DEFER ? A quoi sert cet attribut ?
    Par elitost dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 03/02/2005, 11h24

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