organiser un tableau

Répondre
maxroucool
le 31/03/2005 à 22:54
maxroucool
slt tlm,

Voila mon code, il est un petit peu archaique car mon et les tableaux ca fait 2!

Je voudrais que les données soient ecrites par ordre alphabetique de $extansion

<? 
$dossier = opendir ("images/avatars/"); // le repertoir dans lequel il doit chercher
while ($fichier = readdir ($dossier)) {
if ($fichier != "." && $fichier != "..") {

$extansion = strstr ($fichier, ".");

$extansion_array[$i] = $extansion;
$fichier_array[$i] = $fichier;
$i++;}
}

foreach($extansion_array as $valeur)
{
echo 'extansion : '.$valeur;
echo ' nom du fichier : '.$fichier_array[$j].'<br>';
$j++;}
?>


J'espere que j'ai été clair car je n'en ai pas l'impression!

Merci bp!

+++
moogli
le 31/03/2005 à 23:41
moogli
SAlut,

Tu pense qu'en multipliant les thread sur différents forum tu auras plus de chance ?

regarde le code sur phpdeb !

la fonction que tu cherche s'appele sort

smiley
Il en faut peu pour être heureux !!!!!
rosema
le 01/04/2005 à 10:13
rosema
Les fautes de français ça fait con dans un code
$extention
c 'est incroyable ce que je peux écrire comme conneries
zebden
le 01/04/2005 à 11:59
zebden
ouais meme $extension m'enfin ca hein ...
zebdinou pour les intimes / Blog : http://www.zebden.fr
rosema
le 01/04/2005 à 12:50
rosema
Ouaip je m'en suis aperçu après avoir posté que mon copier-coller avait eu une omission de correction désolé
c 'est incroyable ce que je peux écrire comme conneries
maxroucool
le 01/04/2005 à 13:30
maxroucool
j'ai modifié mon code, j'ai meme corriger les fautes d'orthographes!
mais il ne marche pas, est-ce que vous savez ce qui cloche?

<? 
$dossier = opendir ("images/avatars/");
while ($fichier = readdir ($dossier)) {
if ($fichier != "." && $fichier != "..") {

$extension = strstr ($fichier, ".");

$fichier_array[$i] = array($extension=>$fichier);

$i++;}
}

ksort($fichier_array);
reset($fichier_array);

while (list ($extension, $fichier) = each ($fichier_array))
{
echo 'extansion : '.$extension;
echo ' nom du fichier : '.$fichier.'<br>';
}
?>


Merci bp!

+++
zebden
le 01/04/2005 à 13:46
zebden
Oui parce que ksort trie par rapport aux clés du tableau or la tes cles c'est 0,1,2.. donc deja triés

genre Array ( [0] => Array ( [truc] => 'muche' ) , [1] => Array ( [bidulle] => ..

Donc au lieu de faire
$fichier_array[$i] = array($extension=>$fichier);
tu met :
$fichier_array[$extension] = $fichier;

la ca devrait aller mieux.
zebdinou pour les intimes / Blog : http://www.zebden.fr
maxroucool
le 01/04/2005 à 18:36
maxroucool
ok merci zebden, mais maintenant, il faut que je fasse:
$fichier_array[$fichier] = $extension;
au lieu de:
$fichier_array[$extension] = $fichier;


car j'ai plusieurs fichiers avec la meme extension.
Alors dans ce cas comment dois-je faire pour les ordonner dans l'ordre alphabetique de l'extension, car maintenant quand je fais ksort() , il me le classe selon l'ordre de $fichier.

Merci bp!

+++
zebden
le 01/04/2005 à 19:03
zebden
eh ba tu cherche la fonction qui trie le tableau en fonction des valeurs et non avec les clefs.

ksort dans le manuel php et la t'as plein de fonctions du meme genre affichées en dessous.

Bon logiquement c'est sort la fonction
zebdinou pour les intimes / Blog : http://www.zebden.fr
maxroucool
le 01/04/2005 à 19:18
maxroucool
ben j'ai trouvé asort() qui a l'air de marcher, mais sort() ne marche pas car il sépare les valeurs

Merci bp +++
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours