PHP의 decoct() 함수는 10진수(decimal) 값을 8진수(octal)로 변환하는 내장 함수입니다. 지정된 10진수를 8진수 형태의 문자열로 반환하며, 진법 변환이 필요한 다양한 상황에서 유용하게 활용됩니다.
문법(Syntax)
decoct(num)
매개변수(Parameters)
num − 8진수로 변환하고자 하는 10진수 값입니다.
반환값(Return)
decoct() 함수는 입력된 10진수를 8진수 표기로 변환한 문자열을 반환합니다. 참고로 이 함수가 처리할 수 있는 최대 숫자의 크기는 실행 환경(플랫폼)에 따라 달라질 수 있습니다.
예제 1
가장 기본적인 사용 예시입니다. 10진수 70을 8진수로 변환해 보겠습니다.
<?php
echo decoct("70");
?>
출력 결과
106
10진수 70은 8진수로 106에 해당합니다. 즉, 1×64 + 0×8 + 6×1 = 70이 성립합니다.
이번에는 더 큰 숫자를 변환하는 예제를 살펴보겠습니다.
예제 2
<?php
echo decoct("7878787888");
?>
출력 결과
72547141460
큰 10진수인 7878787888도 오류 없이 8진수 문자열 72547141460으로 정상적으로 변환되는 것을 확인할 수 있습니다.
함께 알아두면 좋은 함수
octdec() − decoct()와 반대로, 8진수 문자열을 10진수로 변환합니다.
base_convert() − 2진수부터 36진수까지 임의의 진법 간 변환을 지원합니다.
dechex(), decbin() − 각각 10진수를 16진수, 2진수로 변환할 때 사용합니다.