[PHP5][POO][IMAP] UNE CLASSE POUR LIRE DES MAILS EN IMAP DEPUIS UNE BAL EXISTAN

Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
-
Messages postés
48
Date d'inscription
mardi 17 février 2004
Statut
Membre
Dernière intervention
23 avril 2006
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/37202-php5-poo-imap-une-classe-pour-lire-des-mails-en-imap-depuis-une-bal-existante

Messages postés
48
Date d'inscription
mardi 17 février 2004
Statut
Membre
Dernière intervention
23 avril 2006

Et remplacer les eregi par des strpos (comme conseillé effectivement dans le manuel php...)
Messages postés
48
Date d'inscription
mardi 17 février 2004
Statut
Membre
Dernière intervention
23 avril 2006

Voilà, mis à jour ;) (mis en publique les attributs parus necessaires, enfin je crois...)
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
4
Ce que je voulais dire, c'est que ca porte pas atteinte au code pur :)
Tu peux faire :
<?php

public $host;

public function __construct($host) {
$this->host = $host;
}

?>
Puis, pour une raison où une autre, faire :
$mysql = new mysql('host.com');
$mysql->host = 'host.fr';
Pas besoin de rajouter une méthode en plus pour faire :
$mysql->setHost('host.fr');
ou alors
$mysql->changeoption('host', 'host.fr'); <== qui est encore plus lent !

Voila pourquoi je dis qu'il ne faut pas avoir peur du "public" et faire des méthodes dans le vent :)
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
"Alors que si j'ai envie de changer d'hote, de login ou de pass ==> $mysql->host = 'new_host';"

Pourquoi changer d'hôte ? quand t'as plusieurs bases à gérer tu changes juste la base, sinon si t'as plusieurs bdd à gérer sur deux serveurs distincts (genre réplication) là peut-être oui (et encore je pense que ça se fait plutôt niveau logiciel et pas PHP ce genre de choses, inutile de perdre des perfs alors qu'il n'y a qu'un dossier "datas" à copier
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
4
"FhX > pour les attributs publics je pense que tout ce qui est host et connexion devrait être fait soit dans la classe soit dans le constructeur, ça éviterait justement de se balader avec ça :-)"
Le host et tout peut être publique... ca ne génera rien du tout. Par contre, le lien de connection $link DOIT être privé et DOIT resté dans la classe, car celui ci n'a pas besoin d'être utilisé en dehord.
Alors que si j'ai envie de changer d'hote, de login ou de pass ==> $mysql->host = 'new_host';

Suffit de faire des tests avant la connection à la base de donnée... généralement c'est ce qu'on fait quand la classe est bien faite :)
Afficher les 10 commentaires