2
echo $sftp->size('foldername');
此代碼僅返回目錄的缺省大小4096PHPSECLIB讀取目錄的總大小?
我怎樣才能讀取的總大小,使用的目錄的空間/包含多個文件夾?
非常感謝您的幫助!
echo $sftp->size('foldername');
此代碼僅返回目錄的缺省大小4096PHPSECLIB讀取目錄的總大小?
我怎樣才能讀取的總大小,使用的目錄的空間/包含多個文件夾?
非常感謝您的幫助!
要做到這一點與SFTP我想你可以做這樣的事情(未經測試):
$size = 0;
$files = $sftp->rawlist('foldername', true);
foreach ($files as $file) {
$size+= $file['size'];
}
注意與SFTP can be slow遞歸目錄列表。您可以選擇$sftp->exec('du -s foldername');
。這將是最快的方法。由於SFTP使用phpseclib擴展SSH2 exec
是一種有效的方法。
+1 - 雖然值得注意的是'$ sftp-> exec('du -s foldername')'不再是SFTP解決方案。它需要shell訪問權限,並且是* nix特定的。 –
謝謝你們的幫助。我會嘗試你的建議 –