Array_Unique??????

Résolu/Fermé
merevinh Messages postés 30 Date d'inscription mardi 5 juin 2012 Statut Membre Dernière intervention 6 octobre 2014 - 28 mars 2013 à 09:58
[Dal] Messages postés 6198 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 13 décembre 2024 - 28 mars 2013 à 11:20
Bonjour tout le monde, voilà je cherche à gérer les doublons de ma première colonne dans mon fichier CSV au moyen d'un array unique seulement ça ne marche pas je n'arrive pas à voir mon erreur :

<?php
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $a = array($data[0]);
        var_dump($a);
        $b = array_unique ($a);
        var_dump($b);
    }
    fclose($handle);
}
?>


Au lieu de me retourner un array_unique sur tout le fichier il le fait sur chaque lignes qu'il retourne :S



1 réponse

[Dal] Messages postés 6198 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 13 décembre 2024 1 096
Modifié par [Dal] le 28/03/2013 à 11:23
Salut merevinh,

fgetcsv analyse ligne par ligne le fichier csv : https://www.php.net/manual/fr/function.fgetcsv.php

Utilise ta boucle fgetcsv pour créer ton tableau contenant les données de la 1ère colonne avec array_push pour empiler les données dans le nouveau tableau, puis, une fois que tu as ce tableau complet, applique array_unique dessus (donc à l'extérieur de la boucle, puisque tu dois faire en sorte que la boucle fgetcsv épuise les lignes contenues dans le fichier traité).

https://www.php.net/manual/fr/function.array-push.php


Dal
0