PHP unterstützt den Betrieb verschiedener Datenbanken und verfügt auch über eine Fülle von Betriebsmethoden für Dateivorgänge. Die aktuellen Vorgänge vieler Freunde basieren jedoch immer noch auf Dateivorgängen, aber manchmal gibt es immer noch viele Verwirrungen und Zweifel ist eine Sammlung einiger Probleme zu Dateioperationen, auf die ich bei meinem täglichen Schreibprozess gestoßen bin und auf die meine Freunde im Forum gestoßen sind.
F: Wie erstelle ich eine neue Datei?
Antwort: 1. Verwenden Sie fopen („Zu erstellender Dateiname“, „Parameter“). Die Parameter können w, w+, a, a+ sein
2. Verwenden Sie exec("echo '' > zu erstellender Dateiname"). Dies dient dazu, die Datei mit der Systemmethode zu erstellen. Sie können sie auch mit dem Touch-Linux-Befehl
erstellen die Datei?
Antwort: 1. Wenn Sie fopen zum Erstellen einer Datei verwenden, verwenden Sie die Parameter richtig?
2. Bei Problemen mit Systemberechtigungen fragen Sie bitte Ihren WEBMASTER, ob Ihr FTP-Verzeichnis über Schreibrechte verfügt.
3. FTP-Berechtigungsproblem: Sie müssen bestätigen, dass das Verzeichnis, in das die Datei geschrieben wird, über Schreibberechtigungen verfügen muss. Das heißt, nach der Anmeldung bei Ihrer FTP-Software muss die andere Gruppe über Schreibberechtigungen verfügen.
Wenn nicht, ändern Sie bitte die Berechtigungen und fragen
Sie: Wie lese ich die Datei in ein Array ein?
A: Datei verwenden.
F: Wie lese ich alle Dateien?
Antwort: 1. Verwenden Sie fread($fp);
2. Wenn Ihre PHP-Version >= 4.3.0 ist, können Sie file_get_contents(); verwenden.
F: Wie kann ich feststellen, ob die Datei existiert?
Antwort: Verwenden Sie file_exists (); warum nicht fopen () zur Beurteilung verwenden? Der Grund dafür ist, dass die von fopen zurückgegebenen Daten aufgrund von Berechtigungsproblemen manchmal zu falschen Urteilen führen.
Frage: Warum tritt ein Fehler auf, wenn ich eine WEB-Seite lese?
Antwort: 1. Möglicherweise sind Ihre Übertragungsparameter falsch. Beim Lesen einer WEB-Seite können Sie die Seite nur im R-Modus lesen.
2. Stellen Sie sicher, dass auf die WEB-Seite zugegriffen werden kann, die Sie lesen möchten.
Frage: Wie kann ich die relevanten Attribute der Datei erhalten?
Antwort: PHP bietet eine Reihe von Methoden zum Abrufen von Dateiattributen, z. B. filemtime(), fileowner(), filegroup(), filectime(), fileatime()... Einzelheiten zur Verwendung finden Sie im Handbuch.
Frage: Kann ich nach dem Öffnen einer Datei in PHP den Datei-„Cursor“ wie in C positionieren?
Antwort: Ja, verwenden Sie fseek();
Frage: Ich möchte verhindern, dass andere auf die Datei zugreifen, wenn sie darauf zugreifen.
Antwort: 1. Sie können andere Verfahren verwenden, um Benutzern den Zugriff auf Seiten für Dateivorgänge zu verweigern.
2. Verwenden Sie flock (); detaillierte Parameter und Verwendungsmethoden finden Sie im Handbuch.
Frage: Wie lösche ich die erste Zeile in der Datei oder gebe eine Datenzeile an?
Antwort: PHP bietet keine solche Operationsmethode, aber wir können sie in Kombination verwenden. Der folgende Code zeigt, dass wir die dritte Datenzeile (test.datw) in der Datei „test.dat“ löschen.
Die Datei enthält mehr als drei Datenzeilen)
<?php
$filename="test.dat"; //Operationsdatei definieren
$delline=3; //Die Anzahl der zu löschenden Zeilen
if(!file_exsits($filename)){
die("Die angegebene Datei wurde nicht gefunden! Vorgang unterbrochen!");
}
$farray=file($filename);//Dateidaten in Array lesen
for($tmpa=0;$Tmpa<count($farray);$Tmpa++){
if(strcmp($Tmpa+1,$delline)==0){
//Gelöschte Zeilen ermitteln
weitermachen;
}
// Daten neu angeordnet
$newfp.=$farray[$Tmpa]."rn";
}
$fp=@fopen($filename,"a ") or die("Fehler beim Öffnen der Datei $filename im Schreibmodus");//Wir öffnen die Datei im Schreibmodus
@fputs($fp,$newfp) or die("Schreiben der Datei fehlgeschlagen");
@fclose($fp);
?>
Der obige Code demonstriert das Löschen einer Dateizeile. Wenn Sie jedoch genau hinschauen, erhalten Sie tatsächlich relevante Erinnerungen für andere Dateivorgänge. ~
Frage: Wenn ich versuche, eine Datei zu öffnen, die nicht vorhanden ist, wie kann ich das nicht zulassen? Fehler werden angezeigt, um zu vermeiden, dass mein Pfad verloren geht! !
Antwort: Fügen Sie das @-Symbol vor der Methode hinzu, mit der Sie die Datei öffnen möchten, um Fehler zu blockieren. @ ist ein spezielles Symbol, das von PHP bereitgestellt wird, um Fehlermeldungen zu blockieren. Alternativ können Sie (normalerweise oben auf der Seite) error_reporting(0) hinzufügen
,
um die Anzeige aller Fehlermeldungen auf der Seite zu blockieren
andere Benutzer davon abhalten, meine Daten zu stehlen?
Antwort: Es wird empfohlen, dass der ISP aufgrund von Einschränkungen open_basedir in php.ini ändert. Die nicht empfohlene ISP-Einstellung besteht darin, Dateioperationen wie fopen und file zu „disable_function“ hinzuzufügen.
Frage: Warum kann ich diese Dateien nicht löschen, nachdem ich sie mit PHP gelöscht habe, wenn ich mich über FTP anmelde? ?
Antwort: Hauptsächlich, weil die von PHP erstellten Dateien zur WEB-Benutzergruppe gehören, das heißt, die erstellten Dateien gehören nicht zu Ihrem FTP-Benutzer! ! ! Die Lösung für dieses Problem besteht darin, die Methoden chmod, unlink usw. des PHP-Programms zu verwenden. Es wird empfohlen, dass Benutzer sich die chmod-Dateiberechtigungen merken, wenn sie PHP zum Erstellen von Dateien verwenden.
Frage: Wie verwendet man Textdateien
?als Data Warehouses? Einige Gästebücher, Foren usw. verwenden dies alle!
Antwort: Tatsächlich wird hier hauptsächlich eine Datei verwendet und ist ein typisches Beispiel für das Lesen und Segmentieren von Daten in Kombination mit einer Explosion.
F: Wie ändere ich den Dateinamen?
Antwort: rename();
F: Wie lösche ich Dateien?
Antwort: unlink(); exec("del(rm -vf) filename"); Hinweis: rm -vf wird unter Linux verwendet.
Frage: Wie lösche ich die Datei?
Antwort: Verwenden Sie fopen(filename,"w"); oder exec("echo '' > filename");
F: Wie bearbeite ich Dateiinhalte?
Antwort: Ich erinnere mich, dass ich einmal eine Frage zum Löschen von Dateiinhalten beantwortet habe. Tatsächlich erfordert die Bearbeitung des Inhalts nur eine Variablenersetzung auf der Grundlage des Löschens des Inhalts. Ich hoffe, Sie können meine Fortsetzung oben nachschlagen und ändern, um die variablen Daten zu ersetzen.