Benennen Sie die Datei in CodeIgniter
Ich habe eine Datei 1353683037.jpg
im tmp-Ordner, wie unten dargestellt:
C:\xampp\htdocs\ci_project\public\images\tmp\1353683037.jpg
Muss ich diese Datei umbenennen zu:
C:\xampp\htdocs\ci_project\public\images\main\1353683037.jpg
Zu tun, habe ich Folgendes getan:
$file = '1353683037.jpg';
$dir = './public/images/';
rename($dir.'tmp\'. $file, $dir.'main\'. $file);
Ich habe die folgende Antwort vom server:
A PHP Error was encountered
Severity: Warning
Message: rename(./public/images/tmp/1353683037.jpg,../public/images/main/1353683037.jpg) [function.rename]: The system cannot find the path specified. (code: 3)
Filename: controllers/test.php
Line Number: 1
Was könnte das problem sein? Dank
- es zeigt an, dass der Pfad falsch ist, versuchen Sie einen absoluten Pfad, um zu überprüfen, ob es funktioniert, wenn dann nicht funktioniert, überprüfen Sie chmod von dem Ordner
- $_SERVER['DOCUMENT_ROOT'] gibt mir den absoluten Pfad funktioniert immer noch nicht. Der Pfad funktioniert im windows-explorer, obwohl
- Nein, ich meine, schreiben Sie von Hand den Pfad und sehen, ob gibt es eine Fehlermeldung
- Komisch! die copy-Funktion scheint gut funktioniert
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es zwei mögliche Gründe, dass Ihr code funktioniert nicht:
Ersten - Sie sind mit backslashes für Ihr Verzeichnis-Pfad. Der backslash ist die Flucht einige Ihrer Zeichen, einschließlich der einfachen Anführungszeichen nach
tmp
undmain
. Auch wenn Ihre windows-Umgebung verwendet umgekehrte Schrägstriche verwenden, sollten Sie nach vorne.Zweiten - Ihr Pfad ist wahrscheinlich falsch. Anstatt einen relativen Pfad verwenden, versuchen Sie es mit einem absoluten Pfad.
Die Konstante (wie in index.php)
FCPATH
geben Sie den server-Pfad zu Ihrer Basis CodeIgniter-Verzeichnis.Also, wir sollten in der Lage sein, um Ihren code so modifizieren, das folgende:
Wenn dieser code nicht funktioniert, haben Sie wahrscheinlich FCPATH falsch eingestellt in Ihre index.php Datei für CodeIgniter. Wenn es falsch ist, Sie sollten es ändern, um die richtige Pfad, d.h.
/xampp/htdocs/ci_project/
es hängt davon ab, aus - laufen Sie diese Befehle von codeigniter instanse oder aus einfachen php-Skript.
im 1. Fall, in der Regel, Ordner, in denen ci-suchen-Dateien sind öffentlich - its-site /
und den Pfad zur Datei ist images/tmp/1353683037.jpg
in 2-case Pfad wird korrekt sein, wenn
zum Beispiel /var/www/public/... und Sie ein Skript in /var/www/da ./im Pfad bedeutet, dass im aktuellen Verzeichnis, wo öffentlich ist dir
verwenden
statt FCPATH