• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

filehandle

guenter

Neues Mitglied
habe noch nicht viel php gemacht :(
wie kann ich einem filehandle den Namen aus einem String (Variable) geben?
Ich brauche inhaltsabhaengig verschiedene files: die Filenamen ergeben sich aus dem Inhalt.

Ich kann zwar eine feste Menge von handles vorsehen und die dann nach Bedarf offnen (und schliessen)
Aber vielleicht geht es auch eleganter..??
Guenter
 

Sempervivum

Senior HTML'ler
Bin mir nicht sicher, ob ich das richtig verstehe: Normaler Weise hat ein Handle einen festen Variablennamen. Aber Du möchtest, dass der Name gleich deinem String ist?
In dem Fall würde ich das ein wenig anders aufziehen: Die Handles in einem ass. Array ablegen mit deinen Strings als Schlüssel, dann kannst Du problemlos mit dem String aus den Variablen darauf zugreifen:
Code:
$name1 = "handle1";
$name2 = "handle2";
$handles = [];
$handles[$name1] = fopen('filename1', 'r');
$handles[$name2] = fopen('filename2', 'r');
$lineFrom1 = fgets($handles[$name1]);
$lineFrom2 = fgets($handles[$name2]);
Ungetestet aber ich bin optimistisch, dass es so funktioniert.
 

guenter

Neues Mitglied
Ich will in die files schreiben.
die files werden auch richtig angelegt; sind dann aber leer:

Zeile 31:
fwrite($handles[$atual_chapter], $last_line);

Warning: fwrite() expects parameter 1 to be resource, bool given in C:\xampp\htdocs\announce_read.php on line 31

stimmt auch: fopen liefert Bool :(
Guenter
 

Sempervivum

Senior HTML'ler
Wenn ich das selber versuche, funktioniert es einwandfrei. Hast Du auch Schreibrechte in dem Verzeichnis? Stimmt die Schreibweise? Dies sieht merkwürdig aus: $atual_chapter - fehlt da das "c"?
 

guenter

Neues Mitglied
Schreibrechte: ja (die files werden angelegt)
das "c" fehlte ueberall; ich habe phpstorm, da war nichts rot (fehlerhaft)
Habe irgenwas geaendert; gerade geht es gar nichts :( Bis spaeter
Guenter
 

guenter

Neues Mitglied
Datenbank: eher nicht; Das programm liest einen Textfile, der von sehr einfachen Geraeten geliefert wird und soll daraus automatisch eine Bedienoberflaeche mit Knoepfen, Reglern etc machen.
 

guenter

Neues Mitglied
Das lesen geht, das Schreiben jetzt auch :)
Mein Fehler war wohl, dass ich "w" statt "a" beim fopen hatte und dann hatte ich noch kein LF amn jedem Zeilenende.
Also funktioniert, Tnx
Guenter
ps noch etwas zur Datenbank:
Bei kleinen "Anwendungen" ist eine Datenbank ein overkill.
Bei sehr grossen (> 1000 Knoepf/ regler) wird die Datenbankstruktur etwas unuebersichtlich.
Meine Datenbankkenntnisse sind zwar 20 -30 Jahre alt und ich habe keine rictige Idee, wie ich das machen soll.
Ich habe eine Idee, wie ich das auch so hinkriege; es kann aber sein, dass in einer spaeteren Erweiterung dafuer eine Datenbank sinnvoll ist.
nochmal tnx
 
Werbung:

Neueste Beiträge

Oben