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 ?] Stopper tout à une condition [Fait]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Par défaut [POO ?] Stopper tout à une condition
    Bonjour,

    J'ai une class qui fait la connexion à un server et qui récupère quelque info à son propos.

    J'aimerais que quand le server n'est pas connecté, tout ce que j'aurais pu faire apres la connexion ne soit pas exécuter.

    Pour l'instant je fais ca avec des if-else mais ca devient vite assez lourd.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $s = new Server(ip, port);
    $s->info();
    Dans mon constructeur j'ai ouvert la connexion et ca renvoie false si c'est pas bon.
    Comment faire pour ne pas exécuter tout ce qui se trouve en dessous de cette ligne ($s = new Server(ip, port)) si ca renvoie false ?
    Sans faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $s = new Server(ip, port);
    if ($s) $s->info();

    Yoshio.

  2. #2
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    La je voit un bon cas pour une exception
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if(!connection...)
        //Si ta connexion se fait pas tu lance une exception
        throw new Exception('Impossible de se connecter');
    La ca arrete net, par contre ca te mettra un message d'erreur...
    Mais bon c'est la seule chose qui existe pour faire ce que tu desire

  3. #3
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Par défaut
    Et ca continue l'exécution de la page ?

    J'ai pas envie d'avoir un div coupé en 2 lol

  4. #4
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    C'est le principe de l'exception
    le mieux a la limite c'est le try catch:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ... code ...
    try {
        ... code ...
    }
    catch {
        //Si erreur dans le try on arrive ici
    }
    ... code qui continue ...
    Et donc toujours pareille si on veut provoquer nous meme l'exception on utiliser
    throw new Exception('Impossible de se connecter'); dans le bloc try.
    Mais ce qui est apres le try, catch est quand meme exécuter

  5. #5
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Par défaut
    Mais si je fais ça je dois le faire hors de ma classe autour du code que j'ai mis précédemment.

    Il n'y a pas un moyen de faire ca dans la classe elle même ?

  6. #6
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Bien sur que si... C'est ceux a quoi je pensait...
    J'ai mit du code c'est pas pour faire beau, c'est pour l'essayer...

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/09/2014, 16h13
  2. exécuter une fonction si toutes les conditions sont validées
    Par dajij dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 10/10/2011, 17h07
  3. [XL-2010] probléme avec une condition sous toute une colonne
    Par Fawez dans le forum Excel
    Réponses: 1
    Dernier message: 12/06/2010, 13h18
  4. [POO] appel d'une méthode d'un autre fichier, le tout objet
    Par aaaaaaaa dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/07/2007, 19h43
  5. Réponses: 3
    Dernier message: 16/04/2004, 17h51

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