PHP目錄
PHP 目錄函數,顧名思義,是一組用於檢索詳細資訊、修改詳細資訊以及獲取有關各種檔案系統目錄及其特定內容的資訊的函數。可以對目錄執行許多操作,例如建立、刪除、更改目前工作目錄、列出目錄中存在的檔案等。這些函數不需要單獨安裝,因為它們是 PHP 核心的一部分。但要啟用 chroot() 功能,我們需要設定 –enable-chroot-func 選項。
廣告 該類別中的熱門課程 PHP 開發人員 - 專業化 | 8 門課程系列 | 3次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
PHP目錄的功能
讓我們來了解一些基本的 PHP 目錄功能,如下:
1.建立一個新目錄
我們使用 mkdir() 函數在 PHP 程式腳本中建立一個新目錄。
文法:
mkdir($dir_path,$mode,$recursive_flag,$context);
哪裡,
- $dir_path 是將建立指定的新目錄的相對路徑或絕對路徑。
- $mode 是採用八進位值的參數,它決定新建立的目錄的可存取等級。
- $recursive 是一個標誌類型字段,有 2 個值 true 或 false,可以允許我們建立巢狀目錄或不允許。
- $context 與 PHP unlink() 類似,例如使用流來指定某些協定等。這也將只傳回一個布林值,如果執行成功完成,則該值將為 true,否則為 false。
範例:
<?php mkdir("/articles/"); echo("Directory created"); ?>
輸出:
這是一個基本範例,展示了在我們需要的路徑中建立目錄。確保路徑有足夠的權限,否則將拋出「權限被拒絕」錯誤。
2.列出目錄的內容
我們分別使用 opendir() 和 readdir() 來開啟目錄連結並讀取它。第 1 步是開啟目錄,第 2 步是讀取它。
第 1 步: 要打開目錄鏈接,opendir() 是我們用來執行此步驟的函數。它需要兩個輸入參數,如下所示。
文法:
opendir($dir_path,$context);
- $dir_path 是需要開啟的目錄的路徑。
- $context 是一個可選參數,我們可以在其中指定上下文流是否存在。
這將傳回資源資料值作為其輸出。它提供的資源 ID 將在我們的進一步處理步驟中使用,否則我們會收到錯誤,因為資源 ID 無效。
第2步:要讀取目錄的內容,readdir()就是用於此目的的函數,需要遞歸調用它直到目錄到達目錄末尾手柄。
範例:
<?php $direct = "/files/"; if (is_dir($direct)){ if ($td = opendir($direct)){ while (($file = readdir($td)) !== false){ echo "filename:" . $file . "<br>"; } closedir($td); } } ?>
輸出:
首先在這個範例中,我們宣告需要讀取的目錄路徑。我們正在 if 語句中檢查該目錄是否存在,然後繼續開啟該目錄的內容並讀取。輸出顯示目錄中存在的檔案名稱。
3.關閉目錄
我們使用 Closedir() 函數來在讀取目錄內容後關閉目錄。
文法:
$dir_handle = opendir($dir_path); ... ... closedir($dir_handle);
範例:
<?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"); } } ?>
輸出:
在此範例中,我們首先聲明目錄的路徑。然後使用 if 條件語句檢查路徑是否有效,如果有效,則開啟目錄,讀取其變量,然後關閉它。因此,在目錄的開啟和關閉之間可以進行任何操作。
4.更改目前目錄
我們使用函數 chdir() 來更改它指向的目前工作目錄。
文法:
chdir(directory)
它只需要一個參數,也就是目前工作目錄應該指向的目錄。成功時傳回 true,如果更改目錄失敗則傳回 false。
範例:
<?php // Get current directory echo getcwd()."\n"; // Change directory chdir("/workspace/test"); // Get current directory echo getcwd(); ?>
輸出:
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().
以上是PHP目錄的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP 8.4 帶來了多項新功能、安全性改進和效能改進,同時棄用和刪除了大量功能。 本指南介紹如何在 Ubuntu、Debian 或其衍生版本上安裝 PHP 8.4 或升級到 PHP 8.4

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

本教程演示瞭如何使用PHP有效地處理XML文檔。 XML(可擴展的標記語言)是一種用於人類可讀性和機器解析的多功能文本標記語言。它通常用於數據存儲

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7
