tri d'un tableau provenant de plusieur tables

poluxe
Invité n'ayant pas de compte PHPfrance

13 août 2008, 09:34

Bonjour

Je fais 3 requete qui recupere le nom, l'adresse de different destinatire qui se trouve dans des tables differentes.
Les reusltats sont ordonne par ordre alphabetique et mis dans un tableau :
array_push($tab,$pseudo,$adresse,);

Quand je fais l'affichage de mon array

J'ai ainsi logiquement un affichage du genre :

Albert
Bob
Cedric
Albert2
Bob 2
Cedric2
Albert2
Bob 2
Cedric2

LE resultat final n'est dont pas du tout trie alphabetiquement. Normal on ne le specifie nul part.
Cependant je ne sais pas si c'est possible ni comment lui dire de trier ce tableau final sur le pseudo.

Si quelq'un avait une suggestion, en esperant avoir ete cler dans mes explications

Merci d'avance

Mammouth du PHP | 959 Messages

13 août 2008, 12:22

Peut-être un sort() ?

poluxe
Invité n'ayant pas de compte PHPfrance

13 août 2008, 13:57

peut etre un petit coup de pouce supplementaire ?

j'ai deja regarder la documentation et si j'ai poster ici c'est parce que j'ai pas compris comment faire ce que je souhaitais

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

13 août 2008, 14:05

Tu peux faire un print_r() de ton tableau ? J'ai comme l'impression que tu colles à la suite des pseudo, des adresses, et je ne sais quoi encore ?

Dans tous les cas, si ton tableau est un tableau à une dimension, un simple appel à la fonction sort() aura pour effet de le trier par ordre alphabétique. Si ton tableau est bien constitué ainsi :
$tab = array ('Albert', 'Bob', 'Cedric', 'Albert2', 'Bob 2', 'Cedric2', ...) ;
print_r($tab); // => array ('Albert', 'Bob', 'Cedric', 'Albert2', 'Bob 2', 'Cedric2', ...) ;

sort($tab); // va trier le tableau 
print_r($tab); // => array ('Albert', 'Albert2', 'Bob', 'Bob 2', 'Cedric', 'Cedric2', ...) ;
S'il s'agit d'un tableau à plusieurs dimensions, il faut te pencher du côté de array_multisort() :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

ViPHP
ViPHP | 1996 Messages

13 août 2008, 19:15

J'ai eu a peu près le même souci à résoudre mais finalement Je suis passé par un tableau associatif.

Cela te donnerai :
<?php

$tab_temp = array ($pseudo => $adresse);

array_push($tab,$tab_temp); 
 ?>
Ensuite tu trie les clefs avec ksort. tes clefs seront triées par ordre alphabétique et les adresses suivront.
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr