Bonjour à tous,

Je souhaiterai modifier la valeur d'une cellule d'un fichier CSV :
J'ai un fichier A.csv qui ressemble à

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Nom;Prenom;Age;Login
Astley;Rick;99;ia123
Montagnie;Gilbert;666;ib456
J'ai effectué une copie grace à un fgetcsv et un fputcsv qui me donne un fichier B.csv identique au A.
J'aimerai pouvoir modifier une cellule du fichier B, par exemple le prénom.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
<?php
$handle = fopen("toast.csv", "r");
 
$fp = fopen("copie.csv", 'w+');
 
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE){
 
	$ligne = $data;
 
	fputcsv($fp, $ligne, ";", "'");
}
 
while (($modif = fgetcsv($fp, 1000, ";")) !== FALSE){
	$champ = count($modif);
	for ($i=0; $i <$champ ; $i++) { 
		if $modif[$i] == 'Prenom'
			{
				$modif[$i] = 'essai';
	}
	}
}
fclose($handle);
fclose($fp);
?>
Par la suite, j'aimerai, au lieu de modifier à la main, pouvoir importer une fonction qui modifiera automatiquement le login :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
function convertirId($a){
 
switch($a){
 
	case 'ia':
echo "208\n";
break;
 
	case 'ib':
echo "209\n";
break;
}
 
return($a);
}
?>
Rick Astley dans le fichier B.csv aura donc un login correspondant à ia123 => 208123