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

PHP & Base de données Discussion :

Est-ce possible de retourner une matrice dans une fonction PHP?


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Est-ce possible de retourner une matrice dans une fonction PHP?
    Bonjour,

    Je me demande si c'est possible de retourner une matrice dans une fonction PHP. Si oui comment faire? Voila ma fonction:
    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
     
    function Getparents($conceptid, $distance, $tabConceptID)
     {	
    	$db = new DatabaseConnection(CFG_DB_HOST, CFG_DB_USER, CFG_DB_PASS, CFG_DB_DATABASE);
    	$db->query("SET CHARACTER SET 'utf8'");
    	$db->query("SET NAMES utf8");
     
    	$queryParents = "SELECT relation.ConceptID2 FROM relation WHERE relation.ConceptID1=\"$conceptid\";";
     
    	$Parents = $db->query_all($queryParents);
     
    	for ($i = 0; $i < count($Parents); $i++)
    	{
    		$parid = $Parents[$i]['ConceptID2'];
    		$count=count($tabConceptID);
    		$tabConceptID[$count][0]= $parid;
    		$tabConceptID[$count][1]= $distance;
     
     
    		Getparents($parid, $distance+1, $tabConceptID);
    	}
     }
    J'ai besoin de retourner une matrice, puisque dans une autre fonction j'apelle celle la pour comparer deux matrices.

    Merci d'avance pour votre aide, et j'espère qu'il y en a des solutions

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    suffit de faire return $maMatrice; a la fin de ta fonction. Tu retournes une matrice comme si tu retournais un entier en PHP.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Koopajah je suis d'accord et je le sais deja. Je pense j'ai mal posé la question. Comment recupérer les valeurs de cette matrice après.
    La fonction List() marche bien la? j'ai des doutes...

    Merci

  4. #4
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    bah une matrice c'est un tableau a deux dimensions, donc ca se parcourt comme un tableau normal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for($ligne = 0 ; $ligne < count($tab) ; $ligne ++)
    {
       for($colonne = 0 ; $colonne < count($tab) ; $colonne ++)
       {
       echo "Ligne $ligne, colonne $colonne, valeur : " . $tab[$ligne][$colonne];
       }
    }
    dans le cas d'un tableau associatif, il faudrait plutot partir sur du "foreach"

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 23
    Points : 15
    Points
    15
    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
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    function Getparents($conceptid, $distance, $tabConceptID)
    {
    	$db = new DatabaseConnection(CFG_DB_HOST, CFG_DB_USER, CFG_DB_PASS, CFG_DB_DATABASE);
    	$db->query("SET CHARACTER SET 'utf8'");
    	$db->query("SET NAMES utf8");
     
    	$queryParents = "SELECT relation.ConceptID2 FROM relation WHERE relation.ConceptID1=\"$conceptid\";";
     
    	$Parents = $db->query_all($queryParents);
     
    	for ($i = 0; $i < count($Parents); $i++)
    	{
    		$parid = $Parents[$i]['ConceptID2'];
    		$count=count($tabConceptID);
    		$tabConceptID[$count][0]= $parid;
    		$tabConceptID[$count][1]= $distance;
     
    		echo $parid;
    		echo "   $distance";
    		echo "</br>";
    		Getparents($parid, $distance+1, $tabConceptID);
    	}
     
    		return $tabConceptID;
    }
     
    $tab = array();	
    $tr = Getparents("D002277", 1, $tab);
    echo count($tr);
    Ce code me retourne 1 comme étant le nombre des enregistrements dans la matrice mais il fallait qu'il retourne 5 suite a l'exemple. J'ai remarqué que le return $tbaConceptID me retourne seulement le 1er résultat du select pourquoi à votre avis?

Discussions similaires

  1. Remplacement d'une ligne par une autre dans une matrice
    Par Mathematiker dans le forum Scilab
    Réponses: 4
    Dernier message: 17/02/2015, 14h57
  2. [MySQL] Est-il possible d'effectuer un recherche dans une base avec une chaine de caractère ?
    Par dannymix dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 13/10/2013, 18h38
  3. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  4. Est-il possible de retourner la source d'une page dans une variable ?
    Par sachav dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 30/12/2007, 18h02
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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