PHP檔案目錄(路徑)的操作

2021-09-16 13:04:43 字數 2923 閱讀 4426

一、解析目錄路徑

1.php程式、配置檔案、apache配置檔案中涉及路徑均使用/,也可以使用目錄分隔符常量directory_separator進行連線(麻煩)

2.多路徑分隔符windows;linux:,也可以使用路徑分隔符常量path_separator進行連線

3.程式換行符常量php_eol

4.相對路徑:./當前目錄../上級目錄

5.不同的根路徑

echo 'mkdir('/hello');//作業系統盤根目錄

6.路徑解析函式

a.basename()取檔名

b.dirname()取目錄名

c.pathinfo()將路徑資訊返回成陣列

d.realpath()返回規範化的絕對路徑名

二、遍歷目錄1.glob:匹配目錄中指定檔案放入返回陣列中

2.directory函式:

•chdir — 改變目錄

•chroot — 改變根目錄

•closedir — 關閉目錄控制代碼

•dir — 返回乙個 directory 類例項

•getcwd — 取得當前工作目錄

•opendir — 開啟目錄控制代碼

•readdir — 從目錄控制代碼中讀取條目

•rewinddir — 倒回目錄控制代碼

•scandir — 列出指定路徑中的檔案和目錄

**注:遍歷目錄時,前兩個檔名.和..要過濾掉**

$open=opendir('test');

/*echo readdir($open);*/

while($filename=readdir($open))else}}

//使用倒回控制代碼,倒回至目錄開始,才能再次遍歷

rewinddir($open);

echo'------------------------------------------

'; while($filename=readdir($open))else

}}

closedir($open);

三、統計目錄中個數和大小1.使用遞迴統計目錄下所有檔案的個數,如下:

$dirnum=0;

$filenum=0;

function getdirnum($filename)else }}

echo '目錄個數為'.$dirnum.'

'; echo '檔案個數為'.$filenum.'

';

closedir($dir);

}else

}getdirnum('test');

2.使用遞迴統計目錄大小,即目錄下所有檔案大小的和

$size=0;

function dirsize($file)else

}}

closedir($dir);

}else

return $size/pow(2,10).'mb';

}echo dirsize('test');

3.統計磁碟/磁碟可用空間大小

$total=disk_total_space('c:');

$valuable=disk_free_space('c:');

echo $total/pow(2,30).'';

echo $valuable/pow(2,30).'';

三、建立和刪除目錄1.mkdir('test',0644):建立目錄

bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = false [, resource $context ]]] )

注:$mode為許可權,使用者、組、其他使用者各自有r=4/w=2/x=1的許可權,如0644為rw_/r__/r__(linux許可權的知識)

2.rmdir('test'):刪除目錄,注意目錄要為空

3.unlink('test.php'):刪除檔案

4.利用遞迴刪除非空目錄,如下:

**注:切記排除目錄下的.和..,否則會刪除整個磁碟內容,且不進**站!**
function deletedir($dirname)else

}}

closedir($dir);

rmdir($dirname);

}deletedir('test');

5.複製和移動目錄1.rename():重新命名乙個檔案或目錄,加上路徑後即為移動檔案,因此移動和重新命名是乙個函式

bool rename ( string $oldname , string $newname [, resource $context ] )

2.copy():只能拷貝檔案,無法拷貝目錄

bool copy ( string $source , string $dest [, resource $context ] )

3.拷貝非空目錄函式:

function copydir($dirname,$dircopy)else

}

}closedir($dir);

}copydir('test','test222');

php 目錄 路徑和檔案 操作

目錄操作 解析路徑 basename 返回路徑的檔名部分 獲取目錄部分 dirname 返回路徑的目錄部分 路徑資訊 pathinfo 返回陣列 目錄名,基本名,副檔名 獲取絕對路徑 realpath 返回絕對路徑或 硬鏈結 絕對路徑 很重要 文字開啟 資料庫連線 磁碟 目錄 檔案大小 檔案大小 f...

php檔案目錄操作

新建檔案 1 先確定要寫入檔案的內容 content 你好 2 開啟這個檔案 系統會自動建立這個空檔案 假設新建的檔案叫file.txt,而且在上級目錄下。w表示 寫檔案 fp下面要用到,表示指向某個開啟的檔案。fp fopen file.txt w 3 將內容字串寫入檔案 fp告訴系統要寫入的檔案...

php檔案 目錄操作

訪問本地 遠端的檔案 服務端請求無 跨域限制 resource 型別理解 作為乙個容器的例項,有的話裡面封裝了檔案內容 或者是二進位制 對完提供api,以操作封裝在內的檔案內容 像c 的stream例項 feof f end of file 是否檔案結尾 檔案操作 resource fopen st...