區別:fopen()函數用於開啟一個檔案或URL;而opendir()函數用於開啟目錄句柄。 fopen()函數如果找不到指定的文件,則會自動建立這個文件;而opendir()函數如果未找到指定的目錄,則會直接拋出錯誤。
本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦
fopen()函數用於開啟一個檔案或URL;opendir()函數用於開啟目錄句柄。
開啟目錄和開啟檔案雖然都是執行開啟的操作,但使用的函數是不同,而且對未找到指定檔案的處理結果也不同。 fopen() 函數如果未找到指定的文件,則會自動建立這個文件,而開啟目錄的 opendir() 函數卻沒有那麼勤勞和爽快,它會直接拋出一個錯誤。
opendir() 函數的語法格式如下所示:
opendir(string $path[, resource $context])
其中,參數$path 為要開啟的目錄路徑,$context 為可選參數,用來設定目錄句柄的環境,$context 是可修改目錄流行為的一套選項。
opendir() 函數如果執行成功則傳回目錄句柄的資源(resource),失敗則傳回 FALSE。如果參數 $path 不是一個合法的目錄或因為權限限製或檔案系統錯誤而無法開啟目錄,opendir() 函數會傳回 FALSE 並產生一個 E_WARNING 層級的 PHP 錯誤訊息。可以在 opendir() 前面加上@
符號來抑制錯誤訊息的輸出。
範例:使用opendir() 函數開啟指定目錄
<?php $dir = './test/'; if(is_dir($dir)){ $info = opendir($dir); var_dump($info); } ?>
執行結果如下:
resource(3) of type (stream)
範例中我們用到了一個is_dir() 函數,該函數用來判斷給定的參數是不是一個目錄。
推薦學習:《PHP影片教學》
以上是php opendir和fopen的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!