Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP dechex() 함수 완벽 가이드 – 10진수를 16진수로 변환하기

정의 및 사용법

PHP의 dechex() 함수는 주어진 10진수(decimal) 인자에 해당하는 16진수(hexadecimal) 표현을 문자열 형태로 반환합니다. 이 함수는 숫자가 아닌 문자열 타입으로 결과를 돌려준다는 점에 유의하세요.

구문

dechex ( int $number ) : string

매개변수

번호매개변수 및 설명
1number
16진수 표현으로 변환할 10진수 값입니다.

반환 값

PHP dechex() 함수는 변환된 16진수 값을 문자열로 반환합니다.

지원 PHP 버전

이 함수는 PHP 4.x, PHP 5.x, PHP 7.x 등 대부분의 버전에서 사용할 수 있습니다.

예제 1: 기본적인 변환

다음 예제는 10진수 1001을 16진수로 변환하여 '3e9'를 반환합니다.

<?php
   $arg = 1001;
   $val = dechex($arg);
   echo "dechex(" . $arg . ") = " . $val;
?>

출력 결과

dechex(1001) = 3e9

예제 2: 소수점 처리

인자로 소수가 전달되면 소수점 이하 부분은 무시됩니다. 예를 들어 100.55는 100으로 취급되며, 100의 16진수 값인 '64'가 반환됩니다.

<?php
   $arg = 100.55;
   $val = dechex($arg);
   echo "dechex(" . $arg . ") = " . $val;
?>

출력 결과

dechex(100.55) = 64

예제 3: 문자열 입력 시 동작

숫자가 아닌 문자열을 인자로 전달하면 결과는 항상 0입니다.

<?php
   $arg = "Hello";
   $val = dechex($arg);
   echo "dechex(" . $arg . ") = " . $val;
?>

출력 결과

dechex(Hello) = 0

예제 4: 음수 변환

음수 10진수가 입력되면 64비트 기준 2의 보수(two's complement) 방식으로 변환됩니다. 다음 예제는 -10의 16진수 값을 계산합니다.

<?php
   $arg = '-10';
   $val = dechex($arg);
   echo "dechex(" . $arg . ") = " . $val;
?>

출력 결과

dechex(-10) = fffffffffffffff6

마무리

dechex() 함수는 10진수를 16진수로 손쉽게 변환할 수 있는 유용한 내장 함수입니다. 반대로 16진수를 10진수로 변환하려면 hexdec() 함수를 사용하면 됩니다. 소수는 정수부만 처리되고, 음수는 2의 보수 방식으로 변환된다는 점을 기억해 두면 실무에서 유용하게 활용할 수 있습니다.