Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1771 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Problème avec array_count_values

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème avec array_count_values

n°1480615
wildschwei​n
Posté le 23-11-2006 à 13:45:44  profilanswer
 

Bonjour,
 
J'utilise la fonction array_count_values afin de compter les valeurs d'un tableau, mais je n'arrive pas à exploiter le résultat : ça me renvoie une chaine contenant un truc du type : array([toto] => 2, [titi] => 5, etc...) alors que je voudrais récupérer un véritable tableau afin de l'exploiter. Comment faire ?
 
Merci d'avance.

mood
Publicité
Posté le 23-11-2006 à 13:45:44  profilanswer
 

n°1480665
soju
One shot !
Posté le 23-11-2006 à 14:20:50  profilanswer
 

array_count_values retourne bien un tableau
le résultat dont tu parles ressemble au résultat d'un print_r ou var_dump sur un tableau
 
un bout de ton code pour y voir plus clair ?

n°1480694
wildschwei​n
Posté le 23-11-2006 à 14:55:27  profilanswer
 

Voilà ce que j'essaye de faire :
 

Code :
  1. $fichier="C:/Extraction.txt";
  2. if (file_exists($fichier))  //Vérifier que ce fichier existe bien
  3. {
  4. $fd=fopen($fichier,'r');  // Ouverture du fichier en lecture seule
  5. while(!feof($fd))   // tant que pas en fin de fichier
  6. {
  7.  $ligne=fgets($fd,8192);
  8.  $ligne=ereg_replace("'",'',$ligne);
  9.  $liste=explode(',', $ligne);
  10.  if (isset($liste[0])&& isset($liste[1])&& isset($liste[2]))
  11.  {
  12.   $bloc=htmlentities($liste[0]);
  13.   $calque=htmlentities($liste[1]);
  14.   $type=htmlentities($liste[2]);
  15.   $table_extraction[$id]=array($bloc,$calque,$type);
  16.   $id++;
  17.  }
  18. }
  19. fclose($fd); //Fermeture du fichier
  20. echo '<br/><br/>Le plan comporte : '.sizeof($table_extraction).' blocs<br/><br/>';
  21. // Classement du tableau par ordre alphabétique
  22. sort($table_extraction);
  23. // Le paragraphe suivant sert à transférer le tableau deux dimensions en un tableau une dimension
  24. $comptage=array();
  25. for($i=0;$i<sizeof($table_extraction);$i++)
  26.     {
  27.  // Rajoute une valeur dans le tableau
  28.  array_push($comptage, $table_extraction[$i][0]);
  29. }
  30. $resultat=var_export(array_count_values($comptage), true); // Compte le nombre de valeurs
  31. for($i=0;$i<sizeof($resultat);$i++)
  32.     {
  33.      echo $resultat[$i].'<br/>';
  34. }
  35. }
  36. else
  37. {
  38. echo 'Le fichier n\'existe pas';
  39. }


 
Mais ça pose un problème. Qu'en pensez vous ?

n°1480718
soju
One shot !
Posté le 23-11-2006 à 15:14:54  profilanswer
 

pourquoi tu utilises var_export ?

n°1480751
wildschwei​n
Posté le 23-11-2006 à 15:41:04  profilanswer
 

soju a écrit :

pourquoi tu utilises var_export ?


J'utilisais var_export pour m'éviter une erreur : j'ai essayer de faire juste :

Code :
  1. $resultat=array_count_values($comptage);
  2. echo $resultat.'<br/><br/><br/><br/>';
  3. for($i=0;$i<sizeof($resultat);$i++)
  4.     {
  5.      echo $resultat[$i].'<br/>';
  6. }


 
Mais au niveau de la ligne 3 j'obtiens : Array, et au niveau de la ligne 7 j'obtiens le message d'erreur : Notice: Undefined offset: 0 in c:\index.php on line 42

Ce qui n'est pas réellement exploitable.

n°1480807
sub1
Posté le 23-11-2006 à 16:30:15  profilanswer
 

Hello,
 
tu ne peux pas afficher un tableau avec echo/print
essaies plutot ça pour parcourir ton tableau, etant donné que tu ne sait pas quelles valeurs constituent les indexs
 

Code :
  1. $resultat=array_count_values($comptage);
  2. foreach($resultat as $cle=>$valeur)
  3. {
  4.      echo $cle.' => '.$valeur.'<br/>';
  5. }

n°1480932
wildschwei​n
Posté le 23-11-2006 à 18:01:58  profilanswer
 

sub1 a écrit :

Hello,
 
tu ne peux pas afficher un tableau avec echo/print
essaies plutot ça pour parcourir ton tableau, etant donné que tu ne sait pas quelles valeurs constituent les indexs
 

Code :
  1. $resultat=array_count_values($comptage);
  2. foreach($resultat as $cle=>$valeur)
  3. {
  4.      echo $cle.' => '.$valeur.'<br/>';
  5. }



 
Merci sub1, ce n'était pas la fonction array_count_values qui n'allait pas, c'est moi qui me plantait en voulant afficher le contenu du tableau.
 
Merci beaucoup à vous tous pour votre aide.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Problème avec array_count_values

 

Sujets relatifs
probleme pour inserer une requete php dans du javascriptProblème avec "echo"
Probleme d'execution de requeteUn probleme de timout?
Problème de débutant: erreur dès le debut "aucune action ne peut...Probleme d'utilisation de Webservice
probleme jniProblème à l'installation de php
Infopath : problème publicationProblème suite à desinstallation module nuke.
Plus de sujets relatifs à : Problème avec array_count_values


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR