Ich habe eine benutzerdefinierte Konfigurationsdatei in meiner CI-Anwendung. Im Admin-Panel meiner Webanwendung möchte ich ein Formular haben, mit dem ich die Werte des Konfigurationsarrays der benutzerdefinierten Datei ändern kann. Mein Problem ist jetzt, dass die Funktion write_file immer false zurückgibt und ich weiß nicht warum. Ich bin ziemlich sicher, dass ich den Pfad in der Funktion richtig schreibe und das Konfigurationsverzeichnis nicht schreibgeschützt ist (das ist wamp, also windows). Die Datei existiert definitiv. Was mache ich falsch?Warum ist die Datei, die ich versuche zu schreiben, "nicht vorhanden"?
Dies ist application/controllers/config/assets.php
$file = FCPATH . 'application\config\assets_fe.php';
if(is_writable($file)) {
$open = fopen($file, 'W');
if(!fwrite($open, $frontend)){
echo "Could not write file!";
} else {
echo "File written!";
}
} else {
echo "File not writable!";
}
Dies ist ein Screenshot der Datei in seiner Lage in dem Windows Explorer.
Ich habe die folgenden Dateipfade in der write_file Funktion versucht:
write_file(FCPATH.'application/config/assets_fe.php', $frontend, 'W');
write_file('application/config/assets_fe.php', $frontend, 'W');
write_file('./application/config/assets_fe.php', $frontend, 'W');
Keine der oben genannten Dateipfade gearbeitet haben ... es etwas anderes sein könnte?
FYI: FCPATH = "W: \ wamp \ www \ zeus \" und es wird von CI Front Controller definiert, um den Pfad dieser Datei zurückzugeben.
Update: Ich habe versucht, nur die native PHP-Version und es heißt, dass die Datei oder das Verzeichnis nicht existiert. Vielleicht benutze ich den falschen Weg. Was sollte es sein?
config schreibbar? –
Ja, Config ist beschreibbar. – ShoeLace1291
Bitte korrigieren Sie den Code in Ihrer Frage. –