PHP의 octdec() 함수는 8진수(octal) 문자열을 해당하는 10진수(decimal) 값으로 변환하는 내장 함수입니다. 진법 변환이 필요한 계산 로직이나 데이터 처리 작업에서 유용하게 활용할 수 있습니다.
구문
octdec(val)
매개변수
val − 변환할 8진수 문자열입니다. 음수 기호(-)도 함께 사용할 수 있습니다.
반환값
지정한 8진수에 대응하는 10진수 값을 반환합니다.
예제 1: 기본 사용법
<?php
echo octdec("-120");
?>
실행 결과:
-80
8진수 "120"은 1×64 + 2×8 + 0 = 80이므로, 앞에 음수 기호가 붙으면 -80이 반환됩니다.
예제 2: decoct()와 함께 사용하기
<?php
echo octdec("170");
echo octdec(decoct(170));
?>
실행 결과:
120170
첫 번째 코드는 8진수 "170"을 10진수 120으로 변환합니다(1×64 + 7×8 + 0 = 120). 두 번째 코드는 decoct(170)이 먼저 10진수 170을 8진수 "252"로 바꾼 뒤, octdec()가 이를 다시 10진수 170으로 되돌립니다. 따라서 두 출력 결과가 이어져 "120170"이 화면에 표시됩니다.
참고 사항
인자는 일반적으로 문자열 형태로 전달하며, 숫자형으로 전달해도 내부적으로 문자열로 취급됩니다.
반대 방향의 변환에는 10진수를 8진수로 바꾸는 decoct() 함수를 사용합니다.
그 외 진법 변환 함수로는 2진수용 bindec(), 16진수용 hexdec() 등이 있으며, 상황에 맞게 조합하여 사용할 수 있습니다.