Mysql
 sql >> Base de données >  >> RDS >> Mysql

Erreur de décalage indéfini sur php lors de l'importation d'un CSV

Parfois, vous devez ignorer la ou les dernières lignes du csv. J'ai défini le nombre de lignes ignorées depuis le haut comme $start_offset et le nombre de lignes à ignorer depuis le bas comme $end_offset. Commencez par zéro et augmentez jusqu'à ce que l'erreur de décalage disparaisse
Voici comment je procède :

$data = file_get_contents($filename);//load up csv

$data_array = explode("\n", $data);//break file into lines
$csv = array_map('str_getcsv', $data_array);//break up comma delimited
$csv_len = count($csv); //count of number of lines
$start_offset = 2;
$end_offset = 3;
for ($i=$start_offset; $i<$csv_len-$end_offset; $i++)
{
    //access columns as $csv[$i][0], $csv[$i][1] etc
}