datei auslesen
Roger
- php
hi!
kann ich variablen aus einer textdatei erstellen?
inhalt test.txt:
name=roger
email=rehnelt@gmx.net
also wenn ich die datei eingelesen habe
$datei = fopen($url, "r");
gibt's da nicht eine funktion, wo ich sagen kann $name=roger?
also bei echo $name würde dann roger erscheinen?
r.
Huhu
gibt's da nicht eine funktion, wo ich sagen kann $name=roger?
ja eval
http://www.php.net/manual/en/function.eval.php
Viele Grüße
lulu
ich glaub nicht dass das die richtige funktion ist, da sie doch bestehende variablen nur "ersetzt".
...
?
trotzdem danke für die antwort.
hi!
kann ich variablen aus einer textdatei erstellen?
inhalt test.txt:
name=roger
email=rehnelt@gmx.net
also wenn ich die datei eingelesen habe
$datei = fopen($url, "r");
gibt's da nicht eine funktion, wo ich sagen kann $name=roger?
also bei echo $name würde dann roger erscheinen?
Wenn nur die beiden Werte in der Datei stehen:
mache eine .csv-Datei mit Inhalt
roger;email;
Routine:
for ($i=0;$i<count($collect);$i++)
{
$test=explode(";",$collect[$i]);
list($name,$email)=$test;
}
oder statt list:
$name=$test[0];
etc.
jetzt hast Du Deine Variablen.
Gruesse
Wilhelm
roger;rehnelt@gmx.net
mache eine .csv-Datei mit Inhalt
roger;email;
yo, so hab ich's dann auch gemacht...
ich dachte nur, es gäbe eine elegantere lösung.
danke für die antwort wilhelm!
Wilhelm
rok°!
Hallo Roger!
kann ich variablen aus einer textdatei erstellen?
inhalt test.txt:
name=roger
email=rehnelt@gmx.net
also wenn ich die datei eingelesen habe
$datei = fopen($url, "r");
gibt's da nicht eine funktion, wo ich sagen kann $name=roger?
also bei echo $name würde dann roger erscheinen?
Zwei Möglichekeiten, die erste hat Wilhelm ja schon genannt (Datei einlesen und 'per hand' Aufdröseln, IMHO die sauberste Variante.)
Die zweite ist nahe an dem was lulu gesagt hat:
inhalt test.txt:
$name=roger;
$email=rehnelt@gmx.net;
beachte die korrekte PHP Syntax der Datei!
und im script dann
<?
include("test.txt"); /* test.txt einlesen und als PHP ausführen */
echo "$name hat die email: $email";
?>
Das ist dann praktisch, wenn du test.txt mit sowieso mit einem Script erzeugst, bei hand-edierten Daten aber evtl. fehleranfällig.
Letzlich geht das auch mit eval und Datei einlesen (mit genau
dem von dir genannten Format):
inhalt test.txt:
name=roger
email=rehnelt@gmx.net
mit dem Code:
<?
$datei = fopen($url, "r") or die("nix $url");
$in=fread($datei,2222);
preg_replace("~(\w+)=(.*)~e","$\1="\2";","$in");
// aus name=roger wird $name="roger"; gemacht und das
// ergebnis als PHP Code ausgführt (dafür ist das e Flag)
echo "$name hat die Email $email";
?>
Letzteres find ich etwas gewagt ...
Gruss,
Carsten
Hi,
kleiner Nachtrag dazu:
inhalt test.txt:
$name=roger;
$email=rehnelt@gmx.net;
beachte die korrekte PHP Syntax der Datei!
Ich schätz mal, das sollte
$name="roger";
$email="rehnelt@gmx.net";
heissen - dann sollte es so klappen ;-)
lg
Martin
Hallo Martin!
Ich schätz mal, das sollte
$name="roger";
$email="rehnelt@gmx.net";
heissen - dann sollte es so klappen ;-)
jo, sollte es. Wenn man schon mal denkt, den einfachen Teil brauchste ja nicht testen...
Gruss,
Carsten