Accueil > Forum > > > > Include dans un tableau Array ?
Include dans un tableau Array ?
jeudi 31 janvier 2008 à 16:33:13 |
Include dans un tableau Array ?

hakeem69
|
Bonjour à tous
Bon je ne vais pas vous la faire : ''oui, dsl mais je suis débuant etc... '' car de toute façon vous allez le remarquez vous-même, en effet j'ai ouvert ma première balise PHP il y a quelques semaines.
Mon problème se situe au niveau d'un tableau, pour mon job l'objectif est de compléter / modifier un tableau par des personnes non avertis en programmation (dont moi lol).
Et j'ai donc effectué ce petit script de test :
FICHIER.TXT (que mes collègues pourront éditer) :
'google'=>'http://www.google.fr/' , 'Jeux Vidéo'=>'http://www.jeuxvideo.com/'
FICHIER.PHP :
<?php
$fixe = array ( ?><?php include('FICHIER.TXT'); ?><? );
reset($fixe);
while (list($nom,$lien) = each($fixe))
{echo "<a href='$lien'>$nom</a><br>";}
?>
Mais voila la vie ne serait pas assez belle si tout marchait du 1ere coup alors je vous demande si il est possible d'inclure un include d'un ficghier TXT dans mon tableau ?
Et sinon quelle solution aurai-je ?
A noter que lorsqu'on remplace le contenu du fichier txt dans le tableau, ça fonctionne nickel !.
Merci d'avance pour votre aide !
|
|
jeudi 31 janvier 2008 à 16:44:30 |
Re : Include dans un tableau Array ?

sidf
|
salut
il me semble que include devrait appeler une page php pour lire un.txt en boucle, vois fopen, fgets
|
|
jeudi 31 janvier 2008 à 17:06:44 |
Re : Include dans un tableau Array ?

bcmfr
|
Slt comme le dit sidf, il faut ouvrir le fichier pour pouvoir le lire. regarde cet article pas mal fait pour utiliser des fichiers [ Lien ]@+
|
|
jeudi 31 janvier 2008 à 18:25:09 |
Re : Include dans un tableau Array ?

Teclis01
|
il faut utiliser la fonction eval de php !  http://de3.php.net/manual/fr/function.eval.php    (j'adore cette fonction    Hein malalammmmmm  ) Afin d executer ton truc... FICHIER.TXT ['google']=>'http://www.google.fr/' , ['Jeux Vidéo']=>'http://www.jeuxvideo.com/'$sContent=file_get_contents('./FICHIER.TXT'); eval("$assSites=array($sContent);"); print_r($assSites); //ya ptet des erreurs mais j ecris ça sans editeur et avant de partir du taf  -------------------------------------------------------------------------------------------------- Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
|
|
jeudi 31 janvier 2008 à 19:36:56 |
Re : Include dans un tableau Array ?

hakeem69
|
RE, Sidf => je ne pense pas que la foction include soit
réservée au page PHP puisque ca marche très bien avec de l'HTLM etmême avec le
fichier TXT, par exemple : Fichier.txt : Bla bla bla ! Fichier.php : <?php include 'Fichier.txt'?> Dans ce cas la page php affichera bien Bla bla bla ! Le souci dans mon script c'est qu'a mon avis, 'google.. etc..
est reconnue comme une chaîne de caractère je pense. Bcmfr => Je n'y arrive pas non plus comme ca, j'ai essayé :
<?php $fichier = "fichier.txt"; $lire = fopen ($fichier, 'r'); $var = fgets ($lire, 255); echo $var; // la c'est parfait, le contenu du fichier TXT s'affiche !
mais en faisant ce qui suit :
$fixe = array($var); reset($fixe); while
(list($f,$g) = each($fixe)) {echo
"<a href='$g'>$f</a><br>";} // la ce ne fonctionne plus ! ?> Personne à une idée pour simplement inclure le contenu de
mon fichier TXT dans le tableau ? 
|
|
jeudi 31 janvier 2008 à 19:51:08 |
Re : Include dans un tableau Array ?

malalam
|
Hello,
c'est surtout que la façon de l'écrire est pourrie ;-)
$fixe = explode(',', file_get_contents('FICHIER.TXT'));
|
|
vendredi 1 février 2008 à 19:46:18 |
Re : Include dans un tableau Array ?

hakeem69
|
Bonjour, Je m'excuse de ne pas m'être manifesté avant mais j'ai été
pris par le boulot. C'est très gentil à vous, surtout à toi malalam qui souligne
cordialement que ma façon d'écrire est pourris. Cela dit, je me vois obligé de te retourner le compliment avec
autant de cordialité car avec ta façon ça ne marche pas non plus.
Après quelques recherches, je pense m'orienter vers une
solution PHP / XML, mais si vous trouvez la solution pour l'enrichissement
commun, je suis preneur. 
|
|
vendredi 1 février 2008 à 20:36:43 |
Re : Include dans un tableau Array ?

malalam
|
Ahem. Donc déjà, tu n'auras visiblement pas remarqué mon ";-)" enfin de phrase. Aucune importance, très sincèrement. FICHIER.TXT (que mes collègues pourront éditer) :
'google'=>'http://www.google.fr/' , 'Jeux Vidéo'=>'http://www.jeuxvideo.com/' FICHIER.PHP :
<?php $fixe = array ( ?><?php include('FICHIER.TXT'); ?><? ); reset($fixe); while (list($nom,$lien) = each($fixe)) {echo "<a href='$lien'>$nom</a><br>";} ?> On reprend : 'google'=>'http://www.google.fr/' , 'Jeux Vidéo'=>'http://www.jeuxvideo.com/' ça, c'est un hash. Chaque élément est séparé par une virgule. explode(',', "'google'=>'http://www.google.fr/' , 'Jeux Vidéo'=>'http://www.jeuxvideo.com/'") un print_r() là_dessus donne bien un tableau. ce que je n'avais pas noté, c'est que tu voulais avoir la paire clef => valeur. Donc : <?php function mySplit($sChaine) { if(!is_string($sChaine)) { throw new Exception('Le paramètre doit être une chaîne'); } $aFinal = array(); $aEntries = explode(',', $sChaine); if(count($aEntries) !== 2) { throw new Exception('Problème de format'); } foreach($aEntries as $sEntry) { $aTmp = explode('=>', $sEntry); $aFinal[$aTmp[0]] = $aTmp[1]; } return $aFinal; } $sChaine = "'google'=>'http://www.google.fr/' , 'Jeux Vidéo'=>'http://www.jeuxvideo.com/'"; print_r(mySplit($sChaine)); ?>
Maintenant, sur ton code, puisque tu veux (d'ailleurs si tu ne le veux pas, c'est pareil) que j'explique mon commentaire malgré mon clin d'oeil : reset() sur un tableau que tu n'as pas parcouru est stupide : tu réinitialises un tableau qui vient d'être initialisé. Mais surtout, tu devrais revoir les fondamentaux de php : un include inclus un fichier. Certes. Si ce n'est pas du php, le fichier est "affiché" tel quel. C'est de l'output. Et sans header() particulier indiquant à la page ce que devra être son output, ce sera du texte (plain/text). Maintenant, faisons un array(texte). Que fait on ? On dit explicitement à php de convertir le texte en tableau. Mais comment php peut-il deviner qu'il doit parser ton texte pour faire ce que dans ta tête tu as imaginé qu'il devait faire ? "'bla'=>'toto'", ça n'est qu'une chaîne. Rien d'autre. A aucun moment tu n'as dit à php : attention, c'est un peu comme du php mon truc, donc essaye de l'analyser, ça ressemble à un tableau!! Et même si tu l'avais dit...ça ne fait qu'y ressembler. ?><? : là, faut que tu m'expliques. Tu fermes un tag php pour le réouvrir juste après ? Quand tu veux sortir d'une salle dont la porte ouverte, tu fermes d'abord la porte puis tu la réouvres après ? Sait-on jamais, des fois que ce soit un piège, elle était peut-être, en réalité, fermée, la porte...on n'est jamais trop prudent. Re sur les tags : <? est déprécié. C'était bon en php3, nettement moins en php4, carrément déconseillé en php5 et surtout avec l'avènement de xml, et on est à l'aube de php6. Ca fait quand même 3 versions de retard si tu veux le justifier. Et pour finir : les valeurs d'attributs html entre apostrophes, c'était en html4. On en est au xhtml, et là, pas de possibilité de faire autrement : ce sont des guillemets, parce qu'on est à l'ère du xml.
Franchement, les petites erreurs de ton code, je n'en avais rien à faire, c'était une boutade. Mais maintenant, tu as le fond de vérité de ma boutade. Et tu peux me maudire avec raisons, là :-)
Juste : eval() est valable. C'est juste que c'est une fonction : - dangereuse - affreusement lente Lais sinon, la solution est valable :-) De tte manière, toutes les solutions de Teclis sont valables. C'est juste qu'elles sont tjrs dangereuses et affreusement lentes ;-) (et Teclis, lui, notera le clin d'oeil...).
|
|
vendredi 1 février 2008 à 22:33:59 |
Re : Include dans un tableau Array ?

hakeem69
|
Ok merci malalam
Je vais
bosser dans ce sens.
Par contre
tu t'es un peu enflammé la, tu rigolais, je rigolais aussi, tout le monde est
détendu ok ? Que ton ego
d'Admin ne vienne pas perturber ta perception de l'humour surtout ! <= ça
aussi c'est de l'humour hein !
CDLT, Hakim
|
|
samedi 2 février 2008 à 11:27:30 |
Re : Include dans un tableau Array ?

malalam
|
Eh bien si j'ai aussi loupé ton humour, j'en suis désolé. La prochaîne fois, fais un signe, histoire que mon ego démesuré d'admin ne s'offusque pas.
|
|
Cette discussion est classée dans : fichier, tableau, txt, include, array
Répondre à ce message
Sujets en rapport avec ce message
transfere un fichier .txt dans un tableau [ par rguillon ]
bonjours j'ai un petit probleme pour afficher le contenu d'un fichier texte dans un tableaule probleme c'est que toutes les info ce mettent a la suite
afficher un fichier .txt dans un tableau [ par rguillon ]
bonjours j'ai un petit probleme pour afficher le contenu d'un fichier texte dans un tableaule probleme c'est que toutes les info ce mettent a la suite
probleme avec tableau associatif [ par arginine ]
Bonjour, J'ai un probleme relativement stupide pour "construire" un tableau associatif avec plusieurs colonnes: // exemple$tab = array( "fichier" =>
Problème pour vider un fichier ( .txt ) automatiquement à une heure précise [ par shadow125 ]
Bonjour,J'ai mis sur mon site un service de chat qui stocke l historique des conv ( un peu comme msn ) sur le serveur. Hors, si vous avez 15 personnes
verifier si un fichier a bien fait appel à un autre grace à la fonction include() ? [ par anedeo ]
Bonjour à tous, je cherche un moyen de verifier qu'un fichier a bien été appelé par un autre via la fonction include() de php je m'explique : mettons
Récupérer variable d'un tableau [ par tibine974 ]
Bonjour !! Voilà j'ai un tableau de cette sorte : $animal= array ( "chien" => array("medor"=>"gentil", "brutus" => "mechant") "chat" => array("f
Incrémenter un fichier !! [ par chanandler ]
Bonjour a tous !! J'ai une fonction que je voudrais faire mais je n'arrive a rien. Voila mon probléme : je dois déplacer un fichier d'un repertoire d
php proleme include [ par natsou_k ]
Bonjour, j ai un soucis avec les inculde et j ai scerné le proleme mais n ai pas trouvé la solution. Dans /php/ j ai tout mes fichier inc.php qui s in
array 2D composé de array [ par Diafwl1 ]
Bonjour, j'aurais voulu savoir s'il existe une fonction qui me permette de créer ou d'ajouter dans un tableau à 2 dimensions, un tabeau d'1 dimension
ecrir fichier txt [ par maxelpiratos ]
svp, juste une petite question... comment fait on pour re-ecrir dans un fichier txt a une nouvelle ligne?merci d avance!!!
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|