parser un CSV avec 24 colonnes=24 classes ?
Bonsoir,
je lis un fichier CSV et je compte analyser chaque colonne. Ce que je pensais faire, c'est créer une classe pour chaque colonne, comme ça :
Code:
1 2 3 4 5 6 7
|
while (false !== ($fields = fgetcsv($handle, $buffer, $this->sep)) ) {
$line_csv=[];
$line_csv[0]=new Field0($fields[0]);
$line_csv[1]=new Field1($fields[1]);
...
$line_csv[23]=new Field23($fields[23]); |
donc pour la colonne X $line_csv[X]=new FieldX($fields[X]); avec la classe FieldX :
FieldX :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <?php
namespace Classes\Olivier;
class FieldX
{
private $name;
/* Constructor */
public function __construct($value)
{
if (is_string($value))
$this->name=$value;
}
public function __tostring()
{
return($this->name);
}
} //end FieldX |
Ca fait un code sacrément lourd (et plein de boulot). Comme je pense (et espère) qu'on peut faire mieux, j'ai pas été loin. Quelle amélioration me proposez-vous ?