8791 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Je suis un peu étonné de me retrouver ici pour un problème de ce genre, car je ne trouve aucune raison à mon soucis...

J'utilise la fonction explode depuis toujours et je n'ai jamais eu de soucis particuliers...

Je lis un fichier .txt ligne par ligne sous cette forme :
jn08c1_1202050_01_hd.jpg	/photos/pvo/transfertvo/photos/jn08c1/jn08c1_x1469_01_hd.jpg	c00a47a33470f63397e576d79003e69a


Le séparateur est donc un espace (certains sont de simples espaces et d'autres des TAB, est-ce la raison ?).

Mon code PHP :
foreach($Ligne as $lignes){
                    $data = explode(" ", $lignes);
                    echo $data[0]."<br />";
                    echo $data[1]."<br />";
                    echo $data[2]."<br />";
                }


Et en résultat, j'obtiens tout simplement la ligne complète dans $data[0]...

A croire que les espaces ne sont pas pris en compte... J'ai pensé à un problème d'encoding des fichiers mais que je le passe en ISO, UTF-8 etc... même problème.

Une solution à cela ?

Merci d'avance.
Modifié par Apoooo (07 Mar 2012 - 09:11)
Bon bha, comme à l'habitude, c'est une fois le bouton validé que je trouve la solution...

Je l'ai même écrit dans mon problème tout seul... Le soucis venait des TAB en séparateur, je pensais que les whitespaces et TAB étaient identiques au niveau texte..

Solution donc :
            $data = explode("\t", $lignes);