Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/05/2011, 19h11   #1
Débutant
 
Inscription : février 2009
Messages : 559
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 559
Points : 138
Points : 138
Par défaut Function retourne tableau

bonsoir, j'ai une fonction qui returne un tableau :

return(array($fruits,$erreur));


comment je fais pour y accéder ?

Code :
1
2
 
echo $fruits['nom']."<br/>";
erreur :
Notice: Undefined variable: fruits


dans ma fonction $fruits et $erreur sont initialisés à = "";


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
function traitement() 
{
 //exemple
$fruits='';
 
$fruits['nom']="fraise";
$fruits['poids']=1;
 
//etc variables
 
if() {
//instructions
$erreur[] = "quantite impossible";
}
 
return(array($fruits,$erreur));
}
noobyyy est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 09/05/2011, 19h13   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
Code :
1
2
$traitement = traitement();
echo $traitement[0]['nom'];
pour initialisé un tableau c'est
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 19h42   #3
Débutant
 
Inscription : février 2009
Messages : 559
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 559
Points : 138
Points : 138
d'accord merci mais pour retourner les 2 tableaux je fais comment alors ?

$fruits = array(); // plus haut j'ai fais comme ceci.

a la place de ce code :
Code :
return(array($fruits,$erreur));

erreur de syntaxe
Code :
return($fruits,$erreur);
noobyyy est déconnecté   Envoyer un message privé Réponse avec citation 12
Vieux 09/05/2011, 21h16   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
pas trop le choix, ou alors utiliser les globales mais c'est pas terrible
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2011, 15h22   #5
Débutant
 
Inscription : février 2009
Messages : 559
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 559
Points : 138
Points : 138
j'ai utilisé ceci qui fonctionne :

Code :
return(array($fruits,$erreur));
mais j'ignore si c'est correctement codé.
noobyyy est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/05/2011, 15h57   #6
Membre chevronné
 
Homme
Développeur Web
Inscription : mars 2011
Messages : 399
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 399
Points : 662
Points : 662
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fonction testQuiVaBien(){
    $fruits = array(); // initialisation d'un tableau
    $fruits['nom'] = "fraise"; // ajout d'une key et d'une valeur (tableau associatif)
    $fruits['poids'] = 1;
 
    $error[] = "erreur qui va bien"; // ajout d'un valeur à la fin d'un tableau
 
    // return array($fruits, $error); 
    // ceci fonctionne et $fruits pourra être "joignable" grâce à la clé 0
    // mais quitte à avoir un tableau associatif :
    return array('fruits'=>$fruits, 'error'=>$error);
}
 
$tableauDeLaFonctionQuiVaBien = testQuiVaBien();
var_dump($tableauDeLaFonctionQuiVaBien['fruits']); // ça marche \o/
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery.
Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels.
Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc...
Shikiryu est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/05/2011, 16h39   #7
Débutant
 
Inscription : février 2009
Messages : 559
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 559
Points : 138
Points : 138
Merci !

donc si je veux la valeur du nom :

Code :
echo var_dump($tableauDeLaFonctionQuiVaBien['fruits']['nom']);
c'est bien ça ?
noobyyy est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/05/2011, 17h15   #8
Membre chevronné
 
Homme
Développeur Web
Inscription : mars 2011
Messages : 399
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 399
Points : 662
Points : 662
Presque.
Soit tu fais un echo, soit tu fais un var_dump mais faut pas faire les 2

http://php.net/manual/fr/function.var-dump.php
http://php.net/manual/fr/function.echo.php

Lire le manuel, c'est utile.
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery.
Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels.
Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc...
Shikiryu est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/05/2011, 17h46   #9
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 245
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 245
Points : 1 502
Points : 1 502
print_r($ton_tableau); est pas mal non plus
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h06.


 
 
 
 
Partenaires

Hébergement Web