|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : février 2007 Messages : 31 ![]() |
Bonjour à tous,
Un petit soucis sur la mise en ordre d'un tableau que je n'arrive pas à solutionner. Voila je récupère mes données que je mets dans un tableau sous cette forme. Code :
Mais il arrive que pour une personne il n'y ait pas de donnée une semaine et lorsque je transfère à smaaty il me décalle les données dans l'affichage. Je parcours donc mon tableau et si l'indice n'existe pas je le créee avec un caractère vide. Il me le rajoute donc à la fin de du sous tableau de la personne concernée(voir ci-dessus la 2001-42). Et la quelque soit la fonction de trie utilisée pour remettre en ordre cela ne change rien (krsort). J'ai bien pensé à reconstituer mon tableau en le copiant dans un autre au fur et à mesure que je contrôle, mais je voudrais bien comprendre pourquoi les tris ne marche pas. Merci pour vos conseils |
||
|
|
00
|
|
|
#2 | ||
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 663 ![]() |
Les fonctions sort ne fonctionnent que sur le premier niveau d'un tableau multi-dimensionnel : le code :
Code :
Array (
[first] => Array (
[2011_40] => toto
[2011_42] => tata
[2011_43] => titi
[2011_41] => tutu
)
)
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : février 2007 Messages : 31 ![]() |
Oui des que j'ai remis de l'ordre, car à force de bidouiller j'ai plus du tout le code d'origine.
|
|
|
00
|
|
|
#4 | ||
|
Invité régulier
![]() Inscription : février 2007 Messages : 31 ![]() |
Bon voila...
Je met la partie qui concerne le tableau; Code :
Puis je le liste en fonction des résultats de 2 autres requêtes $services (qui me renvoie les noms clef 1) et $semaine_periode (qui me donne les semaines clef 2) Je fais un test pour savoir si la valeur existe (j'ai pris isset comme de toute fçon j'ai pas de valeu nul ça fonctionne aussi bien que array_key_exists ) et si n'existe pas je crée avec un caractère vide. Puis je relance un trie du tableau qui ne se fait pas. |
||
|
|
00
|
|
|
#5 | ||
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 663 ![]() |
Comme je l'ai dit, les fonctions sort ne trient que le 1er niveau. Or ce que tu veux faire est un tri du 2e niveau. Donc forcément ça ne fonctionne pas.
Le plus simple serait sans doute de passer par une copie du tableau, en bouclant et en re-triant au fur et à mesure. Code :
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com