Probleme array
Résolu/Fermé
graffer
Messages postés
35
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
13 décembre 2013
-
Modifié par graffer le 7/10/2013 à 14:32
Utilisateur anonyme - 7 oct. 2013 à 14:58
Utilisateur anonyme - 7 oct. 2013 à 14:58
5 réponses
Utilisateur anonyme
7 oct. 2013 à 14:15
7 oct. 2013 à 14:15
Bonjour
Dans l'exemple que tu cites, la fonction sortByFunc est effectivement définie un peu plus haut, ce qu'on ne voit pas dans ton code.
Quand tu dis que tu ajoutes function devant, veux-tu dire que tu l'ajoutes simplement devant sortByFunc($arr,create_function('$element','return $element["age"];')); ? Ça, c'est sûr que c'est incorrect.
Dans l'exemple que tu cites, la fonction sortByFunc est effectivement définie un peu plus haut, ce qu'on ne voit pas dans ton code.
Quand tu dis que tu ajoutes function devant, veux-tu dire que tu l'ajoutes simplement devant sortByFunc($arr,create_function('$element','return $element["age"];')); ? Ça, c'est sûr que c'est incorrect.
graffer
Messages postés
35
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
13 décembre 2013
1
Modifié par graffer le 7/10/2013 à 14:46
Modifié par graffer le 7/10/2013 à 14:46
Bonjour le père
Effectivement si j'ajoutes function devant sortByFunc($arr,create_function('$element','return $element["age"];'));
alors ca me dis
1 => (eran ,30)
2 => (naama ,29)
3 => (a ,11)
4 => (b ,51)
5 => (z ,5)
Fatal error: Call to undefined function sortByFunc() in /UNIONFS/opt/lampp/htdocs/1/nume0.php on line 13
Parse error: syntax error, unexpected '(', expecting '&' or T_VARIABLE in /UNIONFS/opt/lampp/htdocs/1/nume0.php on line 13
et si je ne rajoutes pas function devant
sortByFunc($arr,create_function('$element','return $element["age"];'));
ca me dis
Parse error: syntax error, unexpected '(', expecting '&' or T_VARIABLE in /UNIONFS/opt/lampp/htdocs/1/nume0.php on line 13
donc ca serait une erreur de syntaxe ou bien mauvase organisation du code .
Effectivement si j'ajoutes function devant sortByFunc($arr,create_function('$element','return $element["age"];'));
alors ca me dis
1 => (eran ,30)
2 => (naama ,29)
3 => (a ,11)
4 => (b ,51)
5 => (z ,5)
Fatal error: Call to undefined function sortByFunc() in /UNIONFS/opt/lampp/htdocs/1/nume0.php on line 13
Parse error: syntax error, unexpected '(', expecting '&' or T_VARIABLE in /UNIONFS/opt/lampp/htdocs/1/nume0.php on line 13
et si je ne rajoutes pas function devant
sortByFunc($arr,create_function('$element','return $element["age"];'));
ca me dis
Parse error: syntax error, unexpected '(', expecting '&' or T_VARIABLE in /UNIONFS/opt/lampp/htdocs/1/nume0.php on line 13
donc ca serait une erreur de syntaxe ou bien mauvase organisation du code .
Chris 94
Messages postés
50978
Date d'inscription
mardi 8 janvier 2008
Statut
Modérateur
Dernière intervention
17 février 2023
7 325
7 oct. 2013 à 14:35
7 oct. 2013 à 14:35
Utilisateur anonyme
7 oct. 2013 à 14:42
7 oct. 2013 à 14:42
Tout ceci est parfaitement normal.
Tu utilises une fonction sans l'avoir définie.
Et il ne suffit pas de jeter le mot 'function' au hasard au milieu d'un script (car ça n'a aucun sens là où tu essayes de le mettre) pour définir une fonction.
Prends le temps de lire complètement l'exemple sur lequel tu te bases et ma première réponse : il y a l'explication.
Tu utilises une fonction sans l'avoir définie.
Et il ne suffit pas de jeter le mot 'function' au hasard au milieu d'un script (car ça n'a aucun sens là où tu essayes de le mettre) pour définir une fonction.
Prends le temps de lire complètement l'exemple sur lequel tu te bases et ma première réponse : il y a l'explication.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
graffer
Messages postés
35
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
13 décembre 2013
1
7 oct. 2013 à 14:57
7 oct. 2013 à 14:57
Effectivement merci le père
Ce que je croyais etre la function ne l'etait pas
La function se trouver plus haut mais pas reprise dans l'exemple
Que veut tu on apprend chaque jour un peu plus
Voici la function a rajouter a l'exemple pour que cela fonctionne
function sortByFunc(&$arr, $func) {
$tmpArr = array();
foreach ($arr as $k => &$e) {
$tmpArr[] = array('f' => $func($e), 'k' => $k, 'e' =>&$e);
}
sort($tmpArr);
$arr = array();
foreach($tmpArr as &$fke) {
$arr[$fke['k']] = &$fke['e'];
}
}
Un grand merci encore pour ton aide
Ce que je croyais etre la function ne l'etait pas
La function se trouver plus haut mais pas reprise dans l'exemple
Que veut tu on apprend chaque jour un peu plus
Voici la function a rajouter a l'exemple pour que cela fonctionne
function sortByFunc(&$arr, $func) {
$tmpArr = array();
foreach ($arr as $k => &$e) {
$tmpArr[] = array('f' => $func($e), 'k' => $k, 'e' =>&$e);
}
sort($tmpArr);
$arr = array();
foreach($tmpArr as &$fke) {
$arr[$fke['k']] = &$fke['e'];
}
}
Un grand merci encore pour ton aide