2011-07-20 1 views
-1

Je dois transformer un fichier texte en tableau ... Je ne suis pas sûr de savoir comment procéder car les autres fonctionnalités que j'ai vues pour php prennent un fichier entier et le mettent dans un tableau mais pas tout à fait comme je le veux être donc je suis à la recherche de conseils ici .. qui suit est écrit dans un fichier texte: « jim Kroi, richard wuu, yan kebler, justin Persaud »textfile à un tableau ... des idées?

Comment puis-je utiliser php pour faire un tableau où automatiquement une boucle met chaque nom comme un élément du tableau jusqu'à ce que tous les noms soient épuisés? Le résultat final de ce que j'essaie de faire est: $ array = array ("jim kroi", "richard wuu", "Yan kebler", "justin persaud");

donc une boucle de quelque sorte serait essentiellement la recherche jusqu'à chaque virgule et extraire le nom avant jusqu'à ce que tous les noms manquer ....

Il y a un certain php substr et de telles fonctions, mais je ne peux pas tout à fait penser de comment faire ..

Oui, j'ai le code, la voici:

<?php 
error_reporting(-1); 




$fp = fopen('numbers.csv', 'w'); 

fputcsv($fp, $_POST['names']); 
fputcsv($fp, $_POST['numbers']); 


fclose($fp); 



?> 

je les mets tous dans un csv, mais maintenant comment puis-je faire 2 tableaux, l'un avec l'autre nom avec des nombres? http://imageshack.us/photo/my-images/215/csv.png/

en utilisant imploser je reçois l'erreur:

Attention: implode() [function.implode]: Bad arguments. dans C: \ Program Files \ xampp \ htdocs \ xampp \ something.php sur la ligne 14

<?php 
error_reporting(-1); 

$myFile = "testFile.txt"; 


$fh = fopen($myFile, 'r'); // open file 
$theData = fread($fh, 5); // read file and store in var 
$array = explode("\n", $theData); // explode string by lines using \n 
echo implode("<br/>", $theData); // put the array back together and show each item as a line 
fclose($fh); 


?> 
+1

Dites-nous précisément: (a) la façon dont votre entrée est formatée; (b) quelle sortie voulez-vous? (c) ce que vous avez essayé; (d) Qu'est-ce qui n'a pas fonctionné quand vous avez essayé? –

+0

J'ai quelques idées, tu as du code? – Drewdin

Répondre

0

Quelque chose comme:

$names = array_map('trim', explode(',', file_get_contents('%yourFileHere'))); 
+0

merci beaucoup qui a vraiment fonctionné !! – Bulvak

1

Essayez d'utiliser fgetcsv avec un séparateur personnalisé.

+1

je les ai tous mis dans un csv mais maintenant comment puis-je faire 2 tableaux, l'un avec le nom de l'autre avec des nombres? http://imageshack.us/photo/my-images/215/csv.png/ – Bulvak

0
$string = "jim kroi,richard wuu,yan kebler,justin persaud"; 
$arrNames = explode(',', $string); 
var_dump($arrNames); 

voir explode, lire le fichier avec file_get_contents

0

c'est simple