Flatfile DB
Daniel
- php
hi,
gibt es eine bessere lösung als diese
$dm = fopen("datei.ini", "r");
$daten = array();
$key = 0;
while($zeile = fgets($dm, 10000))
{
$zeile = trim($zeile);
$lposition = strlen($zeile)-1;
if($lposition>=1)
{
if($zeile[0] == "[" && $zeile[$lposition] == "]")
{
$key = $zeile;
$key = str_replace("[", "", $key);
$key = str_replace("]", "", $key);
}
else
{
$daten[$key][] = $zeile;
}
}
}
um eine datei mit dem aufbau:
[Empfaenger]
test1@irgendwo.web
test2@irgendwo.web
test3@irgendwo.web
[Absender]
info@seite.de
auszulesen um als ergebniss solch ein array zu bekommen?
Array
(
[Empfaenger] => Array
(
[0] => test1@irgendwo.web
[1] => test2@irgendwo.web
[2] => test3@irgendwo.web
)
[Absender] => Array
(
[0] => info@seite.de
)
)
MfG
Jepp,
parse_ini_file z.B. :)
MfG
Hi,
parse_ini_file z.B. :)
nein nicht direkt, da müsste ich dann in der .ini
[Empfaenger]
1 = adresse1@ww.web
2 = adresse2@ww.web
machen, das will ich aber nicht. zumindest empfinde ich es als
unpraktisch da es ja änderungen geben kann.
MfG
Hi,
na denn weiss ich auch nicht.
Was hast du denn gegen deine Lösung?
MfG
Hi,
Was hast du denn gegen deine Lösung?
sie ist von mir, daher gibt es sicherlich eine bessere. Wenn nicht, dann
bin ich richtig stolz auf mich. Hab ich zum erstenmal einen nicht
verbesserungsmöglichen code entworfen. wobei sich meiner meinung nach
alles verbessern läßt, und wenns nur für einen ganz speziellen fall
besser ist. es geht immer besser und ich bin ehrgeizig genug um super
tollen code zu programmieren. der nichtmehr weiter verbessert werden kann.
MfG
OK, wenn du es ein bisschen kürzer haben willst ;)
[code=php]
$lines = file("bla.ini");
$daten = array();
$key = "";
foreach($lines AS $zeile)
{
$zeile = trim($zeile);
if(strstr($zeile,'['))
{
$key = substr($zeile, 1, -1);
}
elseif (!empty($zeile))
{
$daten[$key][] = $zeile;
}
}
[/code]
MfG
Hi,
das spart ne menge code. und ergibt genau das gleiche. auch wenn ich foreach und seine arbeitsweise trotz lesen des manuals und der Beispiele
noch nicht so ganz verstanden habe.
MfG