Parsage de fichier texte

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Parsage de fichier texte

par agité » 03 sept. 2008, 15:00

erf en fait j'ai trouver et voyait pas a l'affichage de la variable passé en paramètre il y avait un éspace de trop suite au split, une erreur bête.

par guilt92 » 03 sept. 2008, 14:54

Le problème doit venir de l'appel de ta fonction.

Car le code suivant fonctionne, renvoie false ou la valeur selon si le type passé existe ou pas:
echo idGenre("GAR");
<?php

echo idGenre("GAR"); //affiche 4
echo idGenre("XXX"); //affiche rien

function idGenre($type) 
{ 
    $type = strtoupper($type); 
    $type = strval($type); 
    $id     = array( 'APPT'         => 1, 
                  'BIEN'         => 0, 
                  'GAR'      => 4, 
                  'LOCOM'  => 5, 
                  'MAIS'     => 3 
                  );                  
                              
    if(array_key_exists($type,$id))    return $id[$type]; 
    return false; 
} 

?> 

par agité » 03 sept. 2008, 12:25

Essayes de remplacer in_array() par array_key_exists(), ça devrait aller mieux je crois.
Oui c'était les clefs et non les valeurs qu'il fallait tester, par contre ca ne me retourne toujours false en faisant comme ca maintenant.

par B.Moncef » 03 sept. 2008, 12:07

Essayes de remplacer in_array() par array_key_exists(), ça devrait aller mieux je crois.

Parsage de fichier texte

par agité » 03 sept. 2008, 11:49

Hello,

Un petit problème pour parser un fichier texte, en fait j'ai fais une simple fonction qui me retourne un element d'un tableau en fonction d'une valeur du fichier comme ceci :
function idGenre($type)
{
	$type = strtoupper($type);
	$type = strval($type);
	$id 	= array( 'APPT' 	    => 1,
			      'BIEN' 	    => 0,
			      'GAR'      => 4,
			      'LOCOM'  => 5,
			      'MAIS'     => 3
			      );				 
							 
	if(in_array($type,$id))	return $id[$type]; return false;
}

Mais pas moyen de lui faire tester la valeur, il passe bien dans le in_array, si je test le tableau avec la valeur écrite en brut il me retourne bien la valeur, donc je comprends pas pourquoi il arrive pas à lire avec cette écriture.

Une idée ?