Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich PHP fopen?

Wie verwende ich PHP fopen?

Guanhui
GuanhuiOriginal
2020-06-24 13:40:202435Durchsuche

Wie verwende ich PHP fopen?

Wie verwende ich PHP fopen?

Die Funktion der Funktion fopen in PHP besteht darin, eine Datei oder URL zu öffnen. Ihre Syntax ist „fopen($filename,$mode,$use_include_path,$context)“, und der Rückgabewert ist a Dateizeigerressource. Wenn das Öffnen der Datei fehlschlägt, wird FALSE zurückgegeben.

PHP-Fopen-Parameter

Dateiname

Wenn der Dateiname das Format „scheme://...“ hat wird als URL behandelt und PHP sucht nach einem Protokollhandler (auch Wrapper-Protokoll genannt), um dieses Muster zu verarbeiten. Wenn das Wrapper-Protokoll nicht für das Protokoll registriert wurde, gibt PHP eine Meldung aus, um bei der Suche nach potenziellen Problemen im Skript zu helfen und die Ausführung von Dateiname fortzusetzen, als wäre es ein normaler Dateiname.

Wenn PHP denkt, dass Dateiname eine lokale Datei angibt, wird es versuchen, einen Stream für diese Datei zu öffnen. Auf die Datei muss PHP zugreifen können. Daher müssen Sie bestätigen, dass die Dateizugriffsberechtigungen diesen Zugriff zulassen. Wenn der abgesicherte Modus oder open_basedir aktiviert ist, gelten weitere Einschränkungen.

Wenn PHP davon ausgeht, dass der Dateiname ein registriertes Protokoll angibt und das Protokoll als Netzwerk-URL registriert ist, prüft und bestätigt PHP, dass „allow_url_fopen“ aktiviert wurde. Wenn es geschlossen ist, gibt PHP eine Warnung aus und der Aufruf von fopen schlägt fehl.

Eine Liste der unterstützten Protokolle finden Sie unter Unterstützte Protokolle und Kapselungsprotokolle. Einige Protokolle (auch Wrapper genannt) unterstützen Kontext- und/oder php.ini-Optionen. Sehen Sie sich die entsprechende Seite an, für die Optionen festgelegt werden können (z. B. der user_agent-Wert für den http-Wrapper in php.ini).

Modus

Der Modusparameter gibt die Art des Zugriffs an, der auf den Stream erforderlich ist. Es kann Folgendes sein:

Beschreibung
        fopen()mode 的可能值列表        
mode 说明
'r' 只读方式打开,将文件指针指向文件头。
'r+' 读写方式打开,将文件指针指向文件头。
'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'w+' 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'x' 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则            fopen() 调用失败并返回 FALSE,并生成一条            E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给            底层的 open(2) 系统调用指定            O_EXCL|O_CREAT 标记是等价的。
'x+' 创建并以读写方式打开,其他的行为和 'x' 一样。
'c' 只打开文件进行写入。如果文件不存在,则创建该文件。如果它存在,它既不会被截断(与“w”相反),也不会调用此函数失败(与“x”的情况一样)。文件指针位于文件的开头。如果需要在尝试修改文件之前获取一个建议锁(请参见flock()),这可能很有用,因为使用“w”可能会在获取锁之前截断文件(如果需要截断,则可以在请求锁之后使用ftruncate())。
'c+' 打开文件进行读写;否则它的行为与“c”相同。

fopen()

in mode

mode
'r' Im schreibgeschützten Modus öffnen, wobei der Dateizeiger auf den Dateikopf zeigt.
'r+' Im Lese-/Schreibmodus öffnen und den Dateizeiger auf den Dateikopf verweisen.
'w' Öffnen Sie den Schreibmodus, richten Sie den Dateizeiger auf den Dateikopf und kürzen Sie die Dateigröße auf Null . Wenn die Datei nicht vorhanden ist, versuchen Sie, sie zu erstellen.
'w+' Im Lese-/Schreibmodus öffnen, den Dateizeiger auf den Dateikopf zeigen und die Datei abschneiden Größe auf Null. Wenn die Datei nicht vorhanden ist, versuchen Sie, sie zu erstellen.
'a' Öffnen Sie im Schreibmodus und zeigen Sie mit dem Dateizeiger auf das Ende der Datei. Wenn die Datei nicht vorhanden ist, versuchen Sie, sie zu erstellen.
'a+' Öffnen Sie im Lese-/Schreibmodus und zeigen Sie mit dem Dateizeiger auf das Ende der Datei. Wenn die Datei nicht vorhanden ist, versuchen Sie, sie zu erstellen.
'x' Erstellen und zum Schreiben öffnen, wobei der Dateizeiger auf den Dateikopf zeigt. Wenn die Datei bereits vorhanden ist, schlägt fopen()
fehl, gibt

FALSE zurück und generiert eine E_WARNING

Fehlermeldung der Stufe. Wenn die Datei nicht vorhanden ist, versuchen Sie, sie zu erstellen. Dies und geben Der zugrunde liegende Systemaufruf open(2) gibt an, dass das Flag O_EXCL|O_CREAT gleichwertig ist.
'x+' Erstellt und geöffnet im Lese-/Schreibmodus, andere Verhaltensweisen sind die gleichen wie bei ' x' Dasselbe.
'c' Öffnen Sie die Datei nur zum Schreiben. Wenn die Datei nicht vorhanden ist, wird die Datei erstellt. Wenn sie vorhanden ist, wird sie weder abgeschnitten (im Gegensatz zu „w“), noch schlägt der Aufruf dieser Funktion fehl (wie es bei „x“ der Fall ist). Der Dateizeiger befindet sich am Anfang der Datei. Dies kann nützlich sein, wenn Sie eine Empfehlungssperre erwerben müssen, bevor Sie versuchen, die Datei zu ändern (siehe flock()), da die Verwendung von „w“ möglicherweise dazu führt, dass die Datei vor dem Erwerb der Sperre abgeschnitten wird (wenn eine Abschneidung erforderlich ist, können Sie nach der Anfrage ftruncate verwenden). das Schloss ()).
'c+' Öffnen Sie die Datei zum Lesen und Schreiben ; andernfalls verhält es sich wie „c“.
use_include_pathWenn Sie auch nach Dateien in include_path suchen müssen, können Sie den optionalen dritten Parameter use_include_path auf „1“ oder setzen WAHR. Empfohlenes Tutorial: „PHP“

Das obige ist der detaillierte Inhalt vonWie verwende ich PHP fopen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was ist PHP cURL?Nächster Artikel:Was ist PHP cURL?