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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
$donnees = [
["d1" => "aaa", "d2" => "bbbb", "d3" => "20001"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "20002"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "20003"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "30001"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "30001"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "40001"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "40001"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50001"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50002"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50003"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50004"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50005"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50006"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "50007"],
["d1" => "aaa", "d2" => "bbbb", "d3" => "60007"],
];
$resultat = [];
$caracterePrecedent = NULL;
$compteur = 0;
foreach ($donnees as $ligneDonnee) {
$compteur++;
$premierCaractere = substr($ligneDonnee["d3"], 0, 1);
if ( $compteur > 5
&& ($premierCaractere !== $caracterePrecedent)
) {
$compteur = 0;
// ajout d'un entête
$resultat[] = "Entete;type;{$ligneDonnee["d3"]};date";
}
$resultat[] = "{$ligneDonnee["d1"]};{$ligneDonnee["d2"]};{$ligneDonnee["d3"]}";
$caracterePrecedent = $premierCaractere;
}
$contenu = implode("\n", $resultat);
/*
$contenu contient :
aaa;bbbb;20001
aaa;bbbb;20002
aaa;bbbb;20003
aaa;bbbb;30001
aaa;bbbb;30001
Entete;type;40001;date
aaa;bbbb;40001
aaa;bbbb;40001
aaa;bbbb;50001
aaa;bbbb;50002
aaa;bbbb;50003
aaa;bbbb;50004
aaa;bbbb;50005
aaa;bbbb;50006
aaa;bbbb;50007
Entete;type;60007;date
aaa;bbbb;60007
*/ |
Partager