sizeof()
함수의 정의 및 사용법
sizeof()
함수는
주어진 배열의 모든 요소의 개수를 계산해서 정수로 반환하는 함수입니다.
sizeof()
함수는 count()
함수의 별칭입니다. count()
함수와 동일하게 작동합니다.
/* 일반 배열 */
$array_1 = [1, 2, 3, 4, 5];
var_dump(sizeof($array_1)); // int(5)
$array_2 = [];
var_dump(sizeof($array_2)); // int(0)
$array_2[0] = 1;
$array_2[1] = 2;
var_dump(sizeof($array_2)); // int(2)
/* 연관 배열 */
$associative_array = [
'name' => '홍길동',
'age' => 30,
'city' => '서울'
];
var_dump(sizeof($associative_array)); // int(3)
/* 다차원 배열 */
$multi_dimensional_array = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
var_dump(sizeof($multi_dimensional_array)); // int(3)
// 다차원 배열의 모든 배열 요소의 개수를 계산
var_dump(sizeof($multi_dimensional_array, 1)); // int(12)
sizeof()
함수의 형식은 다음과 같습니다.
구문
sizeof(Countable|array $value, int $mode = COUNT_NORMAL): int
매개변수
$value |
요소의 개수를 계산할 배열이나 Countable 객체입니다. |
---|---|
$mode |
옵션.
이 매개변수는 COUNT_NORMAL (또는 0 )이나 COUNT_RECURSIVE (또는 1 ) 상수 중 하나를 가질 수 있습니다. 기본값은 COUNT_NORMAL 입니다.
|
반환 값
요소의 개수를 정수로 반환합니다.
다차원 배열과 요소의 반환 값 계산
배열 안에 또 다른 배열을 포함하는 다차원 배열(multidimensional array)은 배열 안에 요소로 배열이 있고, 그 배열 안에 요소가 있는 형태인데 요소의 개수를 계산할 때 내부 배열의 요소들까지 모두 포함한 총 요소의 개수를 계산하려면 sizeof()
함수의 두 번째 매개변수의 값을 COUNT_RECURSIVE
나 1
로 설정하면 됩니다.
이렇게 설정하면 sizeof()
함수는 다차원 배열의 모든 요소를 재귀적으로 탐색하여 내부 배열의 요소도 포함하여 총 요소의 개수를 반환합니다.
$multi_dimensional_array = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
var_dump(sizeof($multi_dimensional_array)); // int(3)
// 다차원 배열의 모든 배열 요소의 개수를 계산
var_dump(sizeof($multi_dimensional_array, 1)); // int(12)