Direktori PHP
Aug 29, 2024 pm 01:09 PMFungsi direktori PHP seperti namanya adalah satu set fungsi yang digunakan dalam mendapatkan butiran, mengubah suainya dan mengambil maklumat mengenai pelbagai direktori sistem fail dan kandungan khususnya. Banyak operasi boleh dilakukan pada direktori seperti mencipta, memadam, menukar direktori kerja sekarang, menyenaraikan fail yang ada dalam direktori dan sebagainya. Tiada pemasangan berasingan diperlukan untuk fungsi ini kerana ia datang sebagai sebahagian daripada teras PHP. Tetapi untuk mendayakan fungsi chroot() kita perlu mengkonfigurasi pilihan –enable-chroot-func.
IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olokMulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Fungsi Direktori PHP
Mari kita lihat beberapa fungsi direktori PHP asas seperti di bawah:
1. Buat Direktori Baharu
Kami menggunakan fungsi mkdir() untuk mencipta direktori baharu dalam skrip pengaturcaraan PHP.
Sintaks:
mkdir($dir_path,$mode,$recursive_flag,$context);
di mana,
- $dir_path ialah sama ada laluan relatif atau mutlak di mana direktori baharu yang ditentukan akan dibuat.
- $mode ialah parameter yang akan mengambil nilai perlapanan yang menentukan tahap di mana direktori yang baru dibuat boleh diakses.
- $recursive ialah medan jenis bendera yang mempunyai 2 nilai sama ada benar atau salah yang sama ada boleh membenarkan kami membuat direktori bersarang atau tidak.
- $context adalah serupa dengan apa yang kita ada dengan PHP unlink() seperti mempunyai strim untuk menentukan protokol tertentu dll. Ini juga akan mengembalikan hanya nilai boolean yang akan menjadi benar jika pelaksanaan berjaya diselesaikan dan palsu sebaliknya.
Contoh:
<?php mkdir("/articles/"); echo("Directory created"); ?>
Output:
Ini ialah contoh asas untuk menunjukkan penciptaan direktori dalam laluan yang kami perlukan. Pastikan laluan mempunyai kebenaran yang mencukupi jika tidak ralat "kebenaran ditolak" akan dilemparkan.
2. Senaraikan Kandungan Direktori
Kami menggunakan opendir() dan readdir() untuk membuka pautan direktori dan membacanya masing-masing. Langkah 1 ialah membuka direktori dan Langkah 2 ialah membacanya.
Langkah 1: Untuk membuka pautan direktori, opendir() ialah fungsi yang kami gunakan untuk melakukan langkah ini. Ia memerlukan dua argumen input seperti yang dinyatakan di bawah.
Sintaks:
opendir($dir_path,$context);
- $dir_path ialah laluan direktori yang perlu dibuka.
- $context ialah parameter pilihan di mana kita boleh menentukan sama ada aliran konteks hadir.
Ini mengembalikan nilai data sumber sebagai outputnya. ID sumber yang disediakannya digunakan dalam langkah pemprosesan selanjutnya jika tidak, kami mendapat ralat kerana ID sumber tidak sah.
Langkah 2: Untuk membaca kandungan direktori, readdir() ialah fungsi yang digunakan untuk tujuan ini dan ia perlu dipanggil secara rekursif sehingga penghujung direktori dicapai oleh direktori pegang.
Contoh:
<?php $direct = "/files/"; if (is_dir($direct)){ if ($td = opendir($direct)){ while (($file = readdir($td)) !== false){ echo "filename:" . $file . "<br>"; } closedir($td); } } ?>
Output:
Dalam contoh ini dahulu, kami mengisytiharkan laluan direktori yang perlu dibaca. Kami sedang menyemak penyataan jika jika direktori itu ada dan kemudian meneruskan untuk membuka kandungan direktori dan membaca. Output memaparkan nama fail yang terdapat di dalam direktori.
3. Untuk Menutup Direktori
Kami menggunakan fungsi closedir() untuk menutup direktori selepas membaca kandungannya.
Sintaks:
$dir_handle = opendir($dir_path); ... ... closedir($dir_handle);
Contoh:
<?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"); } } ?>
Output:
Dalam contoh ini, kami mula-mula mengisytiharkan laluan direktori kami. Kemudian menggunakan pernyataan bersyarat jika kami menyemak sama ada laluan itu sah dan jika ya, maka kami membuka direktori, membaca pembolehubahnya dan kemudian menutupnya. Oleh itu, sebarang operasi boleh dilakukan antara pembukaan dan penutupan direktori.
4. Untuk Menukar Direktori Semasa
Kami menggunakan fungsi chdir() untuk menukar direktori kerja semasa yang ditunjuknya.
Sintaks:
chdir(directory)
Ia hanya memerlukan satu parameter iaitu direktori yang mana direktori kerja semasa harus dituju. Ia menjadi benar apabila berjaya dan palsu jika gagal menukar direktori.
Contoh:
<?php // Get current directory echo getcwd()."\n"; // Change directory chdir("/workspace/test"); // Get current directory echo getcwd(); ?>
Output:
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:
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:
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().
Atas ialah kandungan terperinci Direktori PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP
