Page 1 sur 1

Tri tableau par date

Posté : 02 avr. 2014, 11:39
par pipoulito
Bonjour,

J'ai un tableau que je n'arrive pas à classer par date, quelqu'un pourrait-il m'aider svp ?
Je précise qu'il peut y avoir plus de valeur que dans l'exemple suivant.
Merci

Array ( [0] => sam. 5 / 07 [1] => lun. 30 / 06 )

Re: Tri tableau par date

Posté : 02 avr. 2014, 13:06
par Kal747
Bonjour,

Je trouve ton format de date étrange, c'est une chaine de caractère ?

Je te conseille de regarder la fonction usort : http://www.php.net/manual/fr/function.usort.php

Créez ta fonction qui compare 2 date (appelons la "comparedate" pour l'exemple) :

Code : Tout sélectionner

function comparedate(date1, date2) { // Ton code (Renvoi 0 si egal, sinon -1 si date1 < date2, sinon 1) }
, ensuite utilise usort comme ceci : usort ($array , 'comparedate');

En espérant t'avoir guidé.

Bonne journée

Re: Tri tableau par date

Posté : 02 avr. 2014, 13:33
par Pipoulito
Merci, ce sont des dates créées avec strtotime
mais ça n'a pas l'air de fonctionner malheureusement...

Re: Tri tableau par date

Posté : 02 avr. 2014, 16:22
par Kal747
strtotime te renvois un int normalement, ce format.

Qu'est-ce qui ne fonctionne pas ?

Re: Tri tableau par date

Posté : 02 avr. 2014, 16:48
par pipoulito
En fait sur cette chaine je fais en plus un strftime(%a %e / %m') afin d'obtenir des dates dans le tableau : Array ( [0] => sam. 5 / 07 [1] => lun. 30 / 06 [2] => dim. 6 / 07 ...etc..)

J'ai essayé avec la fonction http://www.php.net/manual/fr/function.usort.php mais on dirait que cela n'a pas d'effet...
Merci de ton aide

Re: Tri tableau par date

Posté : 03 avr. 2014, 09:24
par pipoulito
En fait sort fait planter ma page...

Re: Tri tableau par date

Posté : 03 avr. 2014, 09:24
par pipoulito
En fait sort fait planter ma page...
je voulais dire usort

Re: Tri tableau par date

Posté : 03 avr. 2014, 14:57
par jocama
Si tu utilises des tables sql tu fais un ORDER BY simple et efficace :)

Re: Tri tableau par date

Posté : 03 avr. 2014, 16:02
par Kal747
Peus-tu donner le code de ta fonction que tu appeles dans usort ?

Ainsi que ta ligne usort ?