parser un CSV

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • parser un CSV

    Bonjour, le sujet semble très banal et pourtant je suis bloqué depuis quelques heures là dessus.
    Dans mon dév spécifique sous Joomla, je stocke une donnée Text contenant du CSV.
    le CSV je le copie colle à travers un formulaire.

    Par la suite j'essaie d'exploiter ce csv via str_getcsv, mais rien à faire quelque soit le caractère de fin de ligne.
    Au débug, je vois bien pourtant ma chaine contenir des \n\r.
    Je tente aussi un explode('\n',$test) ou \n\r voire meme\r mais ca ne me donne qu'une ligne.

    Suis je fou ou alors aurai je simplement oublié le baba du PHP.
    Est ce que Joomla y est pour quelque chose ?
    Développement ERP Joomla 2.5

  • #2
    Re : parser un CSV

    $lines=explode("\r\n", $str);
    $lines=explode('\r\n', $str);

    Ces 2 lignes ne donnent pas le meme résultat. Voila le problème mais je ne comprends pas. Faudra me faire un rappel php entre les simples et double quotes
    Développement ERP Joomla 2.5

    Commentaire


    • #3
      Re : parser un CSV

      Envoyé par fgossart Voir le message
      $lines=explode("\r\n", $str);
      $lines=explode('\r\n', $str);

      Ces 2 lignes ne donnent pas le meme résultat. Voila le problème mais je ne comprends pas. Faudra me faire un rappel php entre les simples et double quotes
      Bonjour,
      a mon avis, tu devrais plutot prendre le ; ou la , comme delimiteur dans ton fichier CSV pour ecrire ceci
      $lines=explode(";", $str);



      Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer
      Cette année, le JoomlaDay FR a lieu à Bruxelles, les 20 et 21 mai 2022, plus d'infos et inscriptions : www.joomladay.fr

      Commentaire


      • #4
        Re : parser un CSV

        Envoyé par manu93fr Voir le message
        Bonjour,
        a mon avis, tu devrais plutot prendre le ; ou la , comme delimiteur dans ton fichier CSV pour ecrire ceci
        $lines=explode(";", $str);



        http://php.net/manual/fr/function.explode.php
        En fait il faut d'abord couper (explode) en ligne puis ensuite utiliser str_getcsv
        On ne peut pas en une seule commande créer un tableau en 2 dimensions avec str_getcsv

        D'où le premier découpage avec le séparateur \r\n. Sinon ensuite j'utilise bien le ;
        Développement ERP Joomla 2.5

        Commentaire


        • #5
          Re : parser un CSV

          Bonjour,

          Quand j'ai besoin de tester un morceau de code, j'utilise ce site : http://phptester.net/

          Je viens de tester avec ce code fait à l'arrache mais qui valide la procédure.

          Code PHP:
          <?php
          $str
          ='a;b;c\r\nd;"e+x";f';
          $lines1=explode("\r\n"$str);
          $lines2=explode('\r\n'$str);
          print_r($lines1);
          echo 
          '<br>';
          print_r($lines2);
          echo 
          '<br>';

          $chp=explode(";"$lines2[1]);
          print_r($chp);
          echo 
          '<br> ';

          foreach (
          $lines2 as $line) {
          print_rstr_getcsv($line";"));
          echo 
          '<br>';
          }
          Bonne journée
          UP, le plugin universel à découvrir sur https//up.lomart.fr
          bgMax
          , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

          Commentaire


          • #6
            Re : parser un CSV

            salut
            "\n" est interprété comme retour à la ligne, alors que '\n' ne l'est pas, ça prend les caractères
            c'est ici une différence notable entre le " et ' car sinon dans la plupart des cas c'est pareil
            par exemple
            $lines=explode("toto", $str);
            est identique à
            $lines=explode('toto', $str);

            CEd
            Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
            http://www.template-creator.com Outil de création de templates
            Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

            Commentaire

            Annonce

            Réduire
            Aucune annonce pour le moment.

            Partenaire de l'association

            Réduire

            Hébergeur Web PlanetHoster
            Travaille ...
            X