Précédent   Forum des professionnels en informatique > PHP > Outils
Outils Forum d'entraide sur les outils pour développeurs PHP : EDI, installation, administration... Avant de poster : FAQ outils, toutes les FAQ PHP et les comparatifs
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/04/2007, 12h07   #1
Membre actif
 
Avatar de bigltnt
 
Inscription : mars 2007
Messages : 221
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2007
Messages : 221
Points : 155
Points : 155
Par défaut [Configuration] array_search et fichier de configuration

Bonjour.
Je souhaite rendre indépendant la configuration de certaines options de mon site intranet. A la base ce fichier (config.php) comprend des déclarations de constantes (define() ), mais je voudrais pouvoir changer ces valeurs à partir du site.
Code :
1
2
3
4
5
6
7
<?php //config.php
	//Activation de creation de compte par l'utilisateur
	define("ACCOUNT", true);
 
	//Taille max des photos uploadées
	define("TAILLEFMAX", 20000);
?>
N'étant pas très fort en php, j'ai réalisé un autre fichier (config2.php), qui lui contient une ligne déclarant le nom de la constante, puis la valeur dans le but de regénérer le fichier config.php
Citation:
//config2.php
acces_crea
true

taille_photo
20000
Je voulais donc pouvoir lire le fichier config2.php avec la commande file(), et ensuite faire un array_search(), sachant que la valeur qui m'interressera sera la clé +1 (ligne suivante).

Le problème c'est que ca ne marche pas, le array_search() me renvoyant null à chaques fois, et même un foreach($tab as $cle=>$indice), si je compare la chaine $indice avec un if(), la comparaison ne se vérifie jamais.

Alors ma question est la suivante:
- Est-ce une bonne méthode que de vouloir faire comme je fais pour réaliser un fichier de configuration, qui n'est rien d'autre qu'une déclaration de constante ?
- Si non, comment faire ?
- Si oui, pourquoi ca ne marche pas ?

Merci à tous !
bigltnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/04/2007, 12h16   #2
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Bonjour,

Il y a beaucoup plus simple pour résoudre ton problème.

Tu peux faire un fichier ini
Code :
1
2
3
4
 
[config]
acces_crea=true
taille_photo=20000
Et ensuite tu utilises la fonction php parse_ini_file()

Cette fonction lira le fichier ini, et instaciera un tableau avec les différentes valeurs
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/04/2007, 12h26   #3
Membre actif
 
Avatar de bigltnt
 
Inscription : mars 2007
Messages : 221
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2007
Messages : 221
Points : 155
Points : 155
Ouais super ! Ca va me simplifier la vie quelque chose de sympa

Merci a toi !
bigltnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/04/2007, 14h17   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Information complémentaire :
Une autre alternative au fichier ini tout aussi simple à manipuler (surtout avec l'extension SimpleXML) ... c'est d'utiliser un fichier XML
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h26.


 
 
 
 
Partenaires

Hébergement Web