Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Verzeichnis

PHP-Verzeichnis

WBOY
WBOYOriginal
2024-08-29 13:09:091242Durchsuche

PHP-Verzeichnisfunktionen sind, wie der Name schon sagt, eine Reihe von Funktionen, die zum Abrufen von Details, zum Ändern dieser und zum Abrufen von Informationen zu verschiedenen Dateisystemverzeichnissen und ihren spezifischen Inhalten verwendet werden. In den Verzeichnissen können zahlreiche Vorgänge ausgeführt werden, z. B. Erstellen, Löschen, Ändern des aktuellen Arbeitsverzeichnisses, Auflisten der im Verzeichnis vorhandenen Dateien usw. Für diese Funktionen ist keine separate Installation erforderlich, da sie Teil des PHP-Kerns sind. Aber um die Funktion chroot() zu aktivieren, müssen wir die Option –enable-chroot-func konfigurieren.

WERBUNG Beliebter Kurs in dieser Kategorie PHP-ENTWICKLER - Spezialisierung | 8-Kurs-Reihe | 3 Probetests

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Funktionen des PHP-Verzeichnisses

Lassen Sie uns wie folgt einige der grundlegenden PHP-Verzeichnisfunktionen durchgehen:

1. Erstellen Sie ein neues Verzeichnis

Wir verwenden die Funktion mkdir(), um ein neues Verzeichnis im PHP-Programmierskript zu erstellen.

Syntax:

mkdir($dir_path,$mode,$recursive_flag,$context);

wo,

  • $dir_path ist entweder der relative oder der absolute Pfad, in dem das angegebene neue Verzeichnis erstellt wird.
  • $mode ist der Parameter, der Oktalwerte annimmt und die Ebene bestimmt, auf der auf das neu erstellte Verzeichnis zugegriffen werden kann.
  • $recursive ist ein Feld vom Typ Flag, das zwei Werte hat, entweder „true“ oder „false“, die es uns entweder ermöglichen können, verschachtelte Verzeichnisse zu erstellen oder nicht.
  • $context ähnelt dem, was wir mit PHP unlink() haben, etwa einen Stream zur Angabe bestimmter Protokolle usw. Dies gibt auch nur einen booleschen Wert zurück, der „true“ ist, wenn die Ausführung erfolgreich abgeschlossen wurde, andernfalls „false“.

Beispiel:

<?php
mkdir("/articles/");
echo("Directory created");
?>

Ausgabe:

PHP-Verzeichnis

Dies ist ein einfaches Beispiel, um die Erstellung eines Verzeichnisses in dem von uns benötigten Pfad zu zeigen. Stellen Sie sicher, dass der Pfad über ausreichende Berechtigungen verfügt. Andernfalls wird der Fehler „Berechtigung verweigert“ ausgegeben.

2. Listen Sie den Inhalt eines Verzeichnisses auf

Wir verwenden opendir() und readdir(), um den Verzeichnislink zu öffnen bzw. zu lesen. Schritt 1 besteht darin, das Verzeichnis zu öffnen und Schritt 2 darin, es zu lesen.

Schritt 1: Um den Verzeichnislink zu öffnen, ist opendir() die Funktion, die wir für diesen Schritt verwenden. Es sind zwei Eingabeargumente erforderlich, wie unten angegeben.

Syntax:

opendir($dir_path,$context);
  • $dir_path ist der Pfad des Verzeichnisses, das geöffnet werden muss.
  • $context ist ein optionaler Parameter, mit dem wir angeben können, ob ein Kontextstrom vorhanden ist.

Dies gibt den Ressourcendatenwert als Ausgabe zurück. Diese bereitgestellte Ressourcen-ID wird in unseren weiteren Verarbeitungsschritten verwendet. Andernfalls erhalten wir eine Fehlermeldung, da die Ressourcen-ID ungültig ist.

Schritt 2: Um den Inhalt des Verzeichnisses zu lesen, ist readdir() die Funktion, die für diesen Zweck verwendet wird und die rekursiv aufgerufen werden muss, bis das Ende des Verzeichnisses vom Verzeichnis erreicht wird Griff.

Beispiel:

<?php
$direct = "/files/";
if (is_dir($direct)){
if ($td = opendir($direct)){
while (($file = readdir($td)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($td);
}
}
?>

Ausgabe:

PHP-Verzeichnis

In diesem Beispiel deklarieren wir zunächst den Verzeichnispfad, der gelesen werden muss. Wir prüfen in der if-Anweisung, ob das Verzeichnis vorhanden ist, und fahren dann damit fort, den Inhalt des Verzeichnisses zu öffnen und zu lesen. Die Ausgabe zeigt die im Verzeichnis vorhandenen Dateinamen an.

3. So schließen Sie ein Verzeichnis

Wir verwenden die Funktion „closedir()“, um ein Verzeichnis nach dem Lesen seines Inhalts zu schließen.

Syntax:

$dir_handle = opendir($dir_path);
...
...
closedir($dir_handle);

Beispiel:

<?php
$dir = "/file1";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
$direc = readdir($dh);
echo("File present inside directory are:" .direc);
closedir($dh);
echo("Closed directory");
}
}
?>

Ausgabe:

PHP-Verzeichnis

In diesem Beispiel deklarieren wir zunächst den Pfad unseres Verzeichnisses. Dann prüfen wir mit der if-Bedingungsanweisung, ob der Pfad gültig ist. Wenn ja, öffnen wir das Verzeichnis, lesen seine Variablen und schließen es dann. Somit kann zwischen dem Öffnen und Schließen des Verzeichnisses jeder Vorgang ausgeführt werden.

4. So ändern Sie das aktuelle Verzeichnis

Wir verwenden die Funktion chdir(), um das aktuelle Arbeitsverzeichnis zu ändern, auf das sie zeigt.

Syntax:

chdir(directory)

Es ist nur ein Parameter erforderlich, nämlich das Verzeichnis, auf das das aktuelle Arbeitsverzeichnis verweisen soll. Es gibt „true“ zurück, wenn das Verzeichnis erfolgreich geändert werden konnte, und „false“, wenn das Verzeichnis nicht geändert werden konnte.

Beispiel:

<?php
// Get current directory
echo getcwd()."\n";
// Change directory
chdir("/workspace/test");
// Get current directory
echo getcwd();
?>

Ausgabe:

PHP-Verzeichnis

In this example, we are first printing the present working directory. Then we are changing the same using chdir function to “test” directory and printing the same on the output. Hence make sure the entire path we are giving here exists.

5. To Change the Directory Path of Root

We use the function chroot() for changing the root directory of the ongoing process to the directory path we pass as an argument in this function. Also, the present working directory path will be changed to “/”. To perform this function one needs root permission/privileges.

Syntax:

chroot(directory)

Example:

<?php
// Changing root directory path
chroot("/change/path/dir/");
// Displaying present directory
echo getcwd();
?>

Output:

PHP-Verzeichnis

In this example, we are first using the chroot function to change the path of the root directory. Next, we are displaying the present working directory which will be now changed to home path.

6. To Reset the Directory Handle

For this purpose, we are using rewinddir() function which can reset the directory handle initially created by opendir() function.

Syntax:

rewinddir(directory)

It accepts only the directory path as its input argument which is used to tell the directory handle resource path which was opened with opendir() previously. This is an optional parameter which if not specified then the previous link used by the opendir() will be considered.

Example:

<?php
$direc = "/file/";
// To open the directory and read its contents
if (is_dir($direc)){
if ($place = opendir($direc)){
// List files in images directory
while (($file = readdir($place)) !== false){
echo "filename:" . $file . "\n";
}
rewinddir();
echo("Using the function rewinddir\n");
// List files again
while (($file = readdir($place)) !== false){
echo "filename:" . $file . "\n";
}
closedir($place);
echo("Closed directory");
}
}
?>

Output:

PHP-Verzeichnis

In this example first, we are specifying the directory path and if statement we are using to verify if the directory path is present or not. If the directory is present then we are opening and reading the contents of the file and printing the same. Now the file handler will stop printing since it reached the end of file pointer. When we use the rewinddir() function it resets the file handler and hence when we print the directory contents it prints the same output again.

Conclusion

We have gone through some of the basic and important PHP directory functions commonly used in this article. We also noticed that a few of these functions are dependant on each other. For example, we cannot use readdir() without using opendir(). Few other functions which are used are dir(), scandir() and getcwd().

Das obige ist der detaillierte Inhalt vonPHP-Verzeichnis. 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:PHP-E-Mail-FormularNächster Artikel:PHP-E-Mail-Formular