この記事では、PHP がディレクトリ全体のサイズを計算する方法の例について説明します。皆さんの参考に共有してください。具体的な実装方法は以下の通りです
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
/** * ディレクトリのフルサイズを計算します * * @著者ジョナス・ジョン * @バージョン 0.2 * @link http://www.jonasjohn.de/snippets/php/dir-size.htm * @param string $DirectoryPath ディレクトリパス */ 関数 CalcDirectorySize($DirectoryPath) { // ここではnormalize_path関数を使用することをお勧めします // $DirectoryPath に末尾のスラッシュが含まれていることを確認します // (-> http://www.jonasjohn.de/snippets/php/normalize-path.htm) // 見栄えの良いサイズを表示するには、readable_filesize を使用できます //関数。 // (-> http://www.jonasjohn.de/snippets/php/readable-filesize.htm) $サイズ = 0; $Dir = opendir($DirectoryPath); if (!$Dir) -1 を返す; while (($File = readdir($Dir)) !== false) { // ファイルポインタをスキップします if ($File[0] == '.') 続行; // 再帰的に下に進むか、ファイル サイズを追加します if (is_dir($DirectoryPath . $File)) $Size += CalcDirectorySize($DirectoryPath . $File . DIRECTORY_SEPARATOR); その他 $サイズ += ファイルサイズ($ディレクトリパス . $ファイル); } closedir($Dir); $Size を返す; } //使用例: $SizeInBytes = CalcDirectorySize('data/'); |
この記事が皆様の PHP プログラミング設計に役立つことを願っています。