Pb php lors de l'extraction d'un champ
Fermé
maksuha
-
6 janv. 2010 à 13:32
Alain_42 Messages postés 5358 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 6 janv. 2010 à 17:57
Alain_42 Messages postés 5358 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 6 janv. 2010 à 17:57
A voir également:
- Pb php lors de l'extraction d'un champ
- Alert php ✓ - Forum PHP
- Header php - Astuces et Solutions
- Le nom du champ de tableau croisé dynamique n'est pas valide ✓ - Forum Excel
- Undefined index php - Astuces et Solutions
- Retour a la ligne php ✓ - Forum PHP
6 réponses
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 009
6 janv. 2010 à 13:49
6 janv. 2010 à 13:49
Bonjour,
Je ne comprends pas ce que tu veux avoir dans ta variable $lala.
Tel que je lis ton code, tu n'as pas besoin de $lala mais directement de $rows dans ton appel à la dernière ligne...
Xavier
Je ne comprends pas ce que tu veux avoir dans ta variable $lala.
Tel que je lis ton code, tu n'as pas besoin de $lala mais directement de $rows dans ton appel à la dernière ligne...
Xavier
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
6 janv. 2010 à 13:49
6 janv. 2010 à 13:49
ton fichier est -il sur le serveur ?
si oui pourquoi utilisser file_get_contents ?
dans ce cas tu pourrais faire:
si oui pourquoi utilisser file_get_contents ?
dans ce cas tu pourrais faire:
$array_contenu=array();
if(is_file($dir."/".$nom_du_fichier){
$array_fichier=file($dir."/".$nom_du_fichier); //lecture du fichier ligne par ligne et stockage dans un array
for($i=0;$i<sizeof($array_fichier);$i++){
//parcours de l'array pour exploiter chaque ligne
$array_ligne=explode(";",$array_fichier[$i]);
//on empile dans l'array contenu
$array_contenu[$i]= array();
$array_contenu[$i]=$array_ligne;
}
}
echo '<pre>';
print_r($array_contenu); //print_r c'est pour afficher tout un array et <pre> c'est pour la mise en forme
echo '</pre>';
//et ensuite tu accedes à tes valeurs par echo $array_contenu[x][y]
xavier
t'as raison mais lorsque je mets $rows (donc mon tableau divisé en lignes) il me dit Array to string conversion
Sinon je dois absolument utiliser file_get_contents (donc l'ouvrir comme une chaine) car la fonction mb_convert_encoding accepte que des chaines.
snif snif
t'as raison mais lorsque je mets $rows (donc mon tableau divisé en lignes) il me dit Array to string conversion
Sinon je dois absolument utiliser file_get_contents (donc l'ouvrir comme une chaine) car la fonction mb_convert_encoding accepte que des chaines.
snif snif
En fait dans le fichier ouvert comme une chaine, j'arrive à extraire les lignes, mais pas les colonnes de chaque ligne, c'est chiant!
Peut-être il y a un moyen de faire un double explode()?
Peut-être il y a un moyen de faire un double explode()?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
6 janv. 2010 à 14:26
6 janv. 2010 à 14:26
tu peux utiliser ma methode avec file() en convertissant ligne par ligne qui est une chaine avec mb_convert....
j'ai fait exactement comme tu m'as dit, et en affichant le contenu ca m'affiche
Array
(
[0] => Array
(
[0] => 1;champ2;;champ4;champ5;
[1] =>
)
Le but est de pouvoir extraire les champs "1", "champ2" qui sont séparés par des ";" tu vois?
Peut-etre faut-il un explode de plus ?
Merci pour ton aide qui m'est utile.
Array
(
[0] => Array
(
[0] => 1;champ2;;champ4;champ5;
[1] =>
)
Le but est de pouvoir extraire les champs "1", "champ2" qui sont séparés par des ";" tu vois?
Peut-etre faut-il un explode de plus ?
Merci pour ton aide qui m'est utile.
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
6 janv. 2010 à 17:57
6 janv. 2010 à 17:57
$array_contenu=array();
if(is_file($dir."/".$nom_du_fichier){
$array_fichier=file($dir."/".$nom_du_fichier); //lecture du fichier ligne par ligne et stockage dans un array
for($i=0;$i<sizeof($array_fichier);$i++){
//convert utf8
$array_fichier[$i] = mb_convert_encoding($array_fichier[$i], "utf8", "windows-1251");
//parcours de l'array pour exploiter chaque ligne
$array_ligne=explode(";",$array_fichier[$i]);
//on empile dans l'array contenu
$array_contenu[$i]= array();
$array_contenu[$i]=$array_ligne;
}
}