그누보드
그누보드 사용자들을 위한 정보 공유 공간! 설치, 테마, 플러그인, 커스터마이징 팁 등 그누보드에 대한 모든 것을 이야기해보세요!
2025.02.22 00:07
GnuBoard의 디렉토리 크기 계산 함수
GnuBoard는 PHP를 기반으로 개발된 오픈 소스 CMS입니다. 이 글에서는 GnuBoard에서 사용되는 디렉토리 크기 계산 함수인 `get_dirsize` 함수를 분석합니다.
# 함수 정의
# 함수 설명
`get_dirsize` 함수는 지정된 디렉토리의 크기를 계산하는 함수입니다. 이 함수는 디렉토리 내의 모든 파일과 서브 디렉토리의 크기를 합산하여 디렉토리의 총 크기를 반환합니다.
# 함수 동작 순서
1. 함수는 디렉토리 크기 계산을 위한 변수 `$size`를 초기화합니다.
2. 디렉토리 열기: `dir($dir)` 함수를 사용하여 디렉토리를 열고 `$d` 변수에 디렉토리 핸들러를 저장합니다.
3. 디렉토리 내의 항목 읽기: `while` 루프를 사용하여 디렉토리 내의 항목을 읽습니다. `dir($dir)->read()` 함수를 사용하여 디렉토리 내의 항목을 읽고 `$entry` 변수에 항목 이름을 저장합니다.
4. 항목 이름 검사: 항목 이름이 '.' 또는 '..'이 아닌 경우 (현재 디렉토리와 부모 디렉토리는 무시합니다) 파일 크기를 계산합니다.
5. 파일 크기 계산: `filesize($dir . '/' . $entry)` 함수를 사용하여 항목 이름을 포함한 파일의 크기를 계산합니다.
6. 크기 합산: 항목 크기를 `$size` 변수에 합산합니다.
7. 디렉토리 닫기: `dir($dir)->close()` 함수를 사용하여 디렉토리 핸들러를 닫습니다.
8. 디렉토리 크기 반환: `$size` 변수에 저장된 디렉토리 크기를 반환합니다.
# 예제
이 예제에서는 `/path/to/directory` 디렉토리의 크기를 계산하고 크기를 byte 단위로 출력합니다.
# 참고
* `dir()` 함수: 디렉토리 핸들러를 반환합니다.
* `read()` 함수: 디렉토리 내의 항목을 읽습니다.
* `filesize()` 함수: 파일 크기를 계산합니다.
* `close()` 함수: 디렉토리 핸들러를 닫습니다.
[PHP] file - 전체 파일을 배열로 읽습니다.
[PHP] echo - 하나 이상의 문자열을 출력합니다.
[PHP] dir - Directory 클래스의 인스턴스를 반환합니다.
그누보드:get_dirsize() 디렉토리 용량 계산
- 나우호스팅 21일 전 2025.02.22 00:07
-
20
0
/*
* 그누보드 원본 코드 분석 (LGPL 라이선스 적용)
* 출처: https://github.com/gnuboard/gnuboard5
* 라이선스: GNU General Public License v2.0 또는 그 이후 버전
*/
function get_dirsize($dir)
{
$size = 0;
$d = dir($dir);
while ($entry = $d->read()) {
if ($entry != '.' && $entry != '..') {
$size += filesize($dir.'/'.$entry);
}
}
$d->close();
return $size;
}
GnuBoard의 디렉토리 크기 계산 함수
GnuBoard는 PHP를 기반으로 개발된 오픈 소스 CMS입니다. 이 글에서는 GnuBoard에서 사용되는 디렉토리 크기 계산 함수인 `get_dirsize` 함수를 분석합니다.
# 함수 정의
#hostingforum.kr
php
function get_dirsize($dir)
{
$size = 0;
$d = dir($dir);
while ($entry = $d->read()) {
if ($entry != '.' && $entry != '..') {
$size += filesize($dir . '/' . $entry);
}
}
$d->close();
return $size;
}
# 함수 설명
`get_dirsize` 함수는 지정된 디렉토리의 크기를 계산하는 함수입니다. 이 함수는 디렉토리 내의 모든 파일과 서브 디렉토리의 크기를 합산하여 디렉토리의 총 크기를 반환합니다.
# 함수 동작 순서
1. 함수는 디렉토리 크기 계산을 위한 변수 `$size`를 초기화합니다.
2. 디렉토리 열기: `dir($dir)` 함수를 사용하여 디렉토리를 열고 `$d` 변수에 디렉토리 핸들러를 저장합니다.
3. 디렉토리 내의 항목 읽기: `while` 루프를 사용하여 디렉토리 내의 항목을 읽습니다. `dir($dir)->read()` 함수를 사용하여 디렉토리 내의 항목을 읽고 `$entry` 변수에 항목 이름을 저장합니다.
4. 항목 이름 검사: 항목 이름이 '.' 또는 '..'이 아닌 경우 (현재 디렉토리와 부모 디렉토리는 무시합니다) 파일 크기를 계산합니다.
5. 파일 크기 계산: `filesize($dir . '/' . $entry)` 함수를 사용하여 항목 이름을 포함한 파일의 크기를 계산합니다.
6. 크기 합산: 항목 크기를 `$size` 변수에 합산합니다.
7. 디렉토리 닫기: `dir($dir)->close()` 함수를 사용하여 디렉토리 핸들러를 닫습니다.
8. 디렉토리 크기 반환: `$size` 변수에 저장된 디렉토리 크기를 반환합니다.
# 예제
#hostingforum.kr
php
$dir = '/path/to/directory';
$size = get_dirsize($dir);
echo "디렉토리 크기: $size byte";
이 예제에서는 `/path/to/directory` 디렉토리의 크기를 계산하고 크기를 byte 단위로 출력합니다.
# 참고
* `dir()` 함수: 디렉토리 핸들러를 반환합니다.
* `read()` 함수: 디렉토리 내의 항목을 읽습니다.
* `filesize()` 함수: 파일 크기를 계산합니다.
* `close()` 함수: 디렉토리 핸들러를 닫습니다.
이 게시물에 포함된 라이브러리
[PHP] filesize - 파일 크기를 가져옵니다[PHP] file - 전체 파일을 배열로 읽습니다.
[PHP] echo - 하나 이상의 문자열을 출력합니다.
[PHP] dir - Directory 클래스의 인스턴스를 반환합니다.
댓글목록
등록된 댓글이 없습니다.