Versio

config: hoe organiseren?

Overzicht Reageren

Marc Cools

Marc Cools

17/03/2009 21:07:00
Quote Anchor link
Parameters kan ik op verschillende manieren opslaan.
1/ in een config.php bestand met code zoals : $config['debug'] = true;
2/ in een xml bestand met code zoals : <var><key>debug</key><value>1</value></var>
3/ in een database
4/ tekstbestand met lijnen zoals : debug = true
5/ ...

Ik wil deze gegevens via een admin beheren. Wat zou de snelste manier zijn en toch nog praktisch genoeg om dit te realiseren?

Mvg,
Marc
 
PHP hulp

PHP hulp

24/05/2012 06:32:55
Gesponsorde koppelingen:
 
Jesper Diovo

Jesper Diovo

17/03/2009 21:10:00
Quote Anchor link
Als je ze via een admin wilt beheren; een database. Als ze alleen handmatig aangepast mogen worden; een config.php.
 
Marc Cools

Marc Cools

17/03/2009 21:44:00
Quote Anchor link
en de snelheid?
 
Robert Deiman

Robert Deiman

17/03/2009 21:56:00
Quote Anchor link
Gewoon in bestand is sneller, mits je het 1 keer instelt en nooit aanpast. Wil je het eenvoudig/ snel aan kunnen passen, dan is een db misschien meer wat voor je.

Qua snelheid is in bestand sneller, de variabelen zijn meteen beschikbaar, je bent echter de dynamiek kwijt.
 
TJVB tvb

TJVB tvb

17/03/2009 22:00:00
Quote Anchor link
Als je af en toe wat wijzigt zou je het eventueel ook nog in een database kunnen zetten en bij elke wijziging het config bestand overnieuw maken en opslaan. Dan heb je de snelheid van een bestand en de dynamiek van een database.
 
Willem Jan Z

Willem Jan Z

17/03/2009 22:58:00
Quote Anchor link
Een database is handig, als je het goed aanpakt qua inladen. Sowieso dus niet voor elke aanroep van een config value een database request.

Een XML is via PHP goed aan te passen, en met de hand ook. Maar voor beginners al wat lastiger.

Een .ini file is ook met PHP goed te gebruiken (parse-ini-file), en heel makkelijk met de hand aan te passen.

Bij config in bestanden zie ik het aanpassen via een admin altijd als extraatje. Als het echt om de admin gaat, is de database oplossing denk ik wel het handigste. Nadeel daarvan vind ik altijd, is dat database gegevens toch nog altijd in een bestand moeten komen. En je dus op 2 plekken configuratie data hebt.
 
Graviton

graviton

18/03/2009 09:17:00
Quote Anchor link
Met behulp van XML en PHP hoeft het niet percee moeilijk te zijn. Je maakt een XML bestand met je configuratiedata en je kan het bestand dan vervolgens op de volgende manier uitlezen of editen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php

//Laadt het xml bestand in een simplexml object.
$xml = simplexml_load_file("bestand.xml");

//Zo toon je data uit het xml bestand:
echo $xml->rootTag[0]->nogEenTag->jouwParameterTag;

//Zo pas je data in het xml bestand aan:
$xml->rootTag[0]->nogEenTag->jouwParameterTag = "mijnString";

?>
Gewijzigd op 01/01/1970 01:00:00 door graviton
 
Marc Cools

Marc Cools

18/03/2009 13:31:00
Quote Anchor link
De admin hoeft niet supersnel te zijn. Ik denk door met twee bestandjes te werken en niet met een database ik het best af ben. Het eerste bestandje bevat dan alle parameters. De admin doet dan de nodige testjes zodat die parameters correct zijn. Normaal dient dit niet dikwijls te gebeuren en eens alles juist staat blijf je daar af. Het tweede bestandje bevat alleen de modus van de applicatie. Dit is iets dat wel dikwijls zou kunnen veranderen. Door dat bestand te kunnen benaderen via een webbrouwser vereenvoudig ik dit merkelijk.

Het bestand zou in één keer ingelezen worden. Wat zou dan het snelst werken: een xml bestand lezen en parsen; een txt bestand lezen en parsen; of een php bestand includen? Ik vermoed includen maar ik weet het niet zeker.
Gewijzigd op 01/01/1970 01:00:00 door Marc Cools
 
Willem Jan Z

Willem Jan Z

18/03/2009 13:35:00
Quote Anchor link
In theorie het txt bestand, omdat XML waarschijnlijk meer tekens zou bevatten, maar denk niet dat de snelheid in dit gevalt opweegt tegen het gemak van XML.

@graviton: Ik bedoelde ook meer het met de hand bewerken, wist niet of een programmeur het bestand zou moeten bewerken of een klant die nog net een aanknopje van zijn computer kan vinden :)
 



Overzicht Reageren

Get Adobe Flash player