Parser ce fichier de config

Petit nouveau ! | 5 Messages

27 oct. 2010, 17:24

Bonjour :o

J'ai du mal à faire ce que je veux, à savoir parser ce fichier de config:
<?php
	//flag de debug
	$config['TrucService']['logEnable'] 		= true;

	// fichier de log du plugin truc
	$config['TrucService']['logFilename'] 	= 'log_module_truc';

	// Délai avant suppression des trucs non récupérés
	$config['TrucService']['deleteDelay'] 	= (3600 * 24) * 7;

	// service_id du service truc
	$config['TrucService']['serviceId'] 		= 88;

	// emplacement des fichiers xmls des trucs
	$config['TrucService']['trucServiceOut'] 		= ROOT_PATH.'/app/tmp/plugins/truc/output/';

?>
En fait pour chaque ligne de config (sans celles en commentaire bien sur), je dois récupérer la variable de config et sa valeur, par exemple pour les trois premières ça fait logenable=>true, logFilename=>log_module_truc, deleteDelay=>(3600 * 24) * 7 etc...

La difficulté n'est pas de mettre ça sous al forme de tableau mais de parser le fichier, je connais les fonctions de manipulation de string (substr etc) mais je les maitrise mal... en fait mettons que je recupère l'ensemble du contenu sous la forme d'un string, il faudrait, pour dire ça en langage non php, qu'a chaque fois qu'on croise "$config", on prenne tout ce qu'il y a jusqu'au prochain point-virgule. Et que dans chaque élément récupéré, on prenne ce qu'il y a dans le deuxième entre-crochet, puis ce qu'il y a entre le "=" et le point virgul.

Si quelqu'un pouvait m'aider :priere:

ViPHP
ViPHP | 5462 Messages

27 oct. 2010, 17:35

pour mettre les variables ou après ? parce que tu les a deja les valeur

fais un include et un print_r($config); et tu verra

Eléphant du PHP | 288 Messages

27 oct. 2010, 17:37

Salut,

Je sais pas si j'ai bien compris ta question mais je vais te proposer quelque chose selon ce que j'ai compris.

Premièrement, il faut que ton fichier config soit inclu dans le fichier ou tu veux l'utiliser.

Ensuite pour récupérer les clés et valeur du sous tableau TrucService tu fais :

foreach($config['TrucService '] as $cle => $valeur )
    echo 'La cle : '.$cle.'  la valeur: '.$valeur;
Essaye cela et dis moi si c'est ce que tu voulais.

Petit nouveau ! | 5 Messages

27 oct. 2010, 17:47

Vos deux réponses sont complémentaires, pourquoi parser le fichier alors qu'il suffit de l'inclure et de le travailler directement en php tout bêtement, c'était un peu idiot de vouloir parser le fichier :oops:

Je vais faire un include et un foreach, merci à vous :o