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 :

[Système] Fonction qui renvoie plusieurs valeurs


Sujet :

Langage PHP

  1. #1
    Membre éprouvé Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Points : 1 241
    Points
    1 241
    Par défaut [Système] Fonction qui renvoie plusieurs valeurs
    Bonjour,

    je me pose une question existencielle :
    Est-ce correct qu'une fonction renvoie plusieurs valeurs?

    La solution dans ce cas en PHP est de renvoyer un tableau.

    MAIS si je prend un niveau d'abstraction plus élevé (comme aimait le dire un de mes vieux profs d'algo), parlons du Développement en général, est-ce que ce principe est correct?

    En C, on fait pas trop cela (pas que je sache), et comme les tableaux sont des pointeurs, on renvoie à la limite la référence... ce qui fait que la fonction ne renverra toujours qu'une seule valeur.

    Et j'en reviens à PHP : on pourrait décider de renvoyer la référence d'un tableau au lieu de renvoyer le tableau lui meme ..???

    Merci de vos avis.

  2. #2
    Membre habitué Avatar de galak63
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 126
    Points : 146
    Points
    146
    Par défaut
    Ouh la la !!!
    Non on ne renvoie pas plusieurs valeurs !

    LA solution c'est de prendre en entrée/sortie de ta fonction des références sur les données voulues :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    function ma_fonction( & param1, & param2 ... )

  3. #3
    Membre éprouvé Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Points : 1 241
    Points
    1 241
    Par défaut
    Je suis d'accord avec toi, je n'avais pas pensé à ca.

    Mais dans ce cas, ce n'est plus une fonction, c'est une procédure (et c'est pas la meme chose).

  4. #4
    Invité
    Invité(e)
    Par défaut
    Si si ça reste une fonction. Tu n'auras qu'une seule valeur retournée en fonction des paramètres passés même si il y en a plusieurs.

    webrider

  5. #5
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 331
    Points : 15 674
    Points
    15 674
    Par défaut
    Citation Envoyé par galak63
    Non on ne renvoie pas plusieurs valeurs !
    pourquoi ?
    quand on développe avec de la POO, les méthodes retournent souvent des objets et dans un objet on a bien plusieurs valeurs

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 21
    Points : 25
    Points
    25
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    class laclass{
     
      var c;
      var d;
     
      function mafonction($a,$b){
      $this->c=$a*2;
      $this->d=$b+2;
      }
     
    }
    voilà, après avoir fait un traitement complex , tu as bien accès à deux valeurs en retour, c et d.

  7. #7
    Membre habitué Avatar de galak63
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 126
    Points : 146
    Points
    146
    Par défaut
    Citation Envoyé par mathieu
    pourquoi ?
    quand on développe avec de la POO, les méthodes retournent souvent des objets et dans un objet on a bien plusieurs valeurs
    La tu joues sur les mots, dans tous les cas il n'y a qu'un seul objet qui est retourné ...

Discussions similaires

  1. Fonction qui retourne plusieurs valeurs !
    Par casafa dans le forum C++
    Réponses: 20
    Dernier message: 23/04/2014, 16h56
  2. Une fonction qui renvoie plusieurs valeurs ?
    Par chuckichucki dans le forum Langage
    Réponses: 9
    Dernier message: 14/01/2011, 13h49
  3. Réponses: 2
    Dernier message: 09/01/2006, 19h45
  4. Réponses: 31
    Dernier message: 25/10/2005, 18h26
  5. [PL/SQL] Fonction qui retourne plusieurs valeurs
    Par Loko dans le forum Oracle
    Réponses: 2
    Dernier message: 07/12/2004, 09h43

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