Tri tableau à partir d'une liste.txt et de deux variables.
Résolu
Fontainard
Messages postés
68
Date d'inscription
Statut
Membre
Dernière intervention
-
Fontainard Messages postés 68 Date d'inscription Statut Membre Dernière intervention -
Fontainard Messages postés 68 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Ce que j'essaye de faire n'est forcément pas compliqué, mais je n'arrive pas néanmoins à trier mes liens en fonction de la catégorie dans un array, l'objectif est de réaliser une simple liste de liens qui seraient rangés par catégories "pour une page partenaire".
Voilà mon fichier texte :
et mon code php actuel
J'ai tenté de trier avec sort, mais je n'ai que réussi à faire à part un tri alphabétique :p. j'ai essayé d'imbriquer un for ($i=0 ; $i<=cpt; $i++) en enregistrant à chaque fois une variable $catactu pour pouvoir ensuite la comparer, J'ai essayé d'incorporer de la même manière une fonction de tri qui compare avec strcmp($catactu["tableau"],$cat["tableau"] !== 0){ et usort sans rien réussir à obtenir.
Bref, je n'arrive pas à formaliser mon code pour que ça fonctionne correctement, votre aide est donc assurément la bienvenue s'il vous plait !
Merci !
Ce que j'essaye de faire n'est forcément pas compliqué, mais je n'arrive pas néanmoins à trier mes liens en fonction de la catégorie dans un array, l'objectif est de réaliser une simple liste de liens qui seraient rangés par catégories "pour une page partenaire".
Voilà mon fichier texte :
http://www.lien1.com/,a
http://www.lien2.com/,b
http://www.lien3.com/,a
http://www.lien4.com/,b
http://www.lien5.com/,b
http://www.lien6.com/,a
et mon code php actuel
$tableau = array();
$fn = fopen('liens.txt', 'r') or die ("probleme ouverture du fichier texte");
while ($ligne=fgets($fn))
{
list($url, $cat)= explode(",",$ligne);
$tableau[]=$url;
echo '<td> </td>';
}
print_r($tableau);
fclose($fn);
?>
J'ai tenté de trier avec sort, mais je n'ai que réussi à faire à part un tri alphabétique :p. j'ai essayé d'imbriquer un for ($i=0 ; $i<=cpt; $i++) en enregistrant à chaque fois une variable $catactu pour pouvoir ensuite la comparer, J'ai essayé d'incorporer de la même manière une fonction de tri qui compare avec strcmp($catactu["tableau"],$cat["tableau"] !== 0){ et usort sans rien réussir à obtenir.
Bref, je n'arrive pas à formaliser mon code pour que ça fonctionne correctement, votre aide est donc assurément la bienvenue s'il vous plait !
Merci !
A voir également:
- Tri tableau à partir d'une liste.txt et de deux variables.
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. - Guide
1 réponse
Bonjour,
Une solution serait qu'au lieu d'avoir un tableau plat, tu aies un tableau de tableaux :
Xavier
Une solution serait qu'au lieu d'avoir un tableau plat, tu aies un tableau de tableaux :
$tableau = array(); $fn = fopen('liens.txt', 'r') or die ("probleme ouverture du fichier texte"); while ($ligne=fgets($fn)) { list($url, $cat)= explode(",", $ligne); if (!isset($tableau[$cat])) $tableau[$cat] = array(); $tableau[$cat][] = $url; } print_r($tableau); fclose($fn);
Xavier
Fontainard
Messages postés
68
Date d'inscription
Statut
Membre
Dernière intervention
Félicitations bonhomme, c'est ce qu'il me fallait merci grandement ! (désolé pour la latence!)