PHP에서 HEXDEC 함수는 HEX 문자열을 해당 10 진수 값으로 변환하는 일반적으로 사용되는 내장 기능입니다. 사용하는 것은 매우 간단합니다.
<?php
$decimal = hexdec("1a3f");
echo $decimal; // 산출 6719
?>
그러나 HEXDEC은 HEX 문자열을 다룰 때 범위와 제한 사항이 있으며 프로그램의 오류 및 데이터 혼란을 피하는 데 필수적입니다.
HEXDEC은 합법적 인 16 진수 표현식이어야하는 문자열 매개 변수를 수락합니다. 이 함수는 문자열의 시작 부분에서 16 진수 숫자 문자 (0-9, AF, AF)를 말하면 첫 번째 비 홍수 문자가 중지 될 때까지 해당 소수점 정수를 반환합니다. 문자열이 0x 또는 0x가 앞에있는 경우 다음도 인식됩니다.
<?php
echo hexdec("0x1a3f"); // 6719
echo hexdec("1a3fxyz"); // 6719,후속 비 헬스 맨 문자는 무시됩니다
echo hexdec("xyz1a3f"); // 0,처음에 비 헬스 캐릭터 문자를 반환하십시오0
?>
순수한 16 진 문자로 구성된 문자열 <br> 예를 들어 : "1a3f", "ff12", "0xabc"( 0x 접두사가 있거나없는)는 올바르게 변환 할 수 있습니다.
문자열은 16 진 문자 <br>로 시작해야합니다 hexdec은 문자열이 유효한 16 진 문자로 시작하는 경우에만 변환됩니다.
예를 들면 : "ABCD123"→ 첫 번째 비 홍수 문자가 중지 될 때까지 "ABCD123"이전의 16 진 문자를 식별하십시오.
사례를 무시하십시오 <br> 문자열의 문자는 대문자 나 소문자 일 수 있으며 HEXDEC을 올바르게 처리 할 수 있습니다.
이 문자열에는 비 홍수 문자가 포함되어 있으며 <br>로 시작합니다 예를 들어 : "g123", "xyz",이 문자열은 비 헥스 문자로 시작하고 Hexdec은 직접 0을 반환합니다.
공백 또는 기타 분리기가있는 16 진수 문자열
Hexdec은 공간이나 구분자를 건너 뛰지 않습니다. 예를 들어, "1A 3F"는 공간이 발생하여 변환이 중지되며 "1A"부분으로만 변환됩니다.
매우 긴 16 진수 문자열
HEXDEC 에 의해 반환 된 값은 부동 소수점 번호입니다. 매우 큰 16 진수를 다룰 때 정확도 손실이 발생합니다. 많은 수를 처리하기 위해 BCMATH 또는 GMP 확장을 사용하는 것이 좋습니다.
<?php
echo hexdec("0x1a3f") . "\n"; // 6719
echo hexdec("1A3F") . "\n"; // 6719
echo hexdec("1a3fxyz") . "\n"; // 6719,비자원성 꼬리 문자를 무시하십시오
echo hexdec("xyz1a3f") . "\n"; // 0,처음에 불법 인물,변환 할 수 없습니다
echo hexdec("1a 3f") . "\n"; // 26,공간을 마치지 마십시오,만 돌리십시오1a
?>
HEXDEC가 16 진수로 시작하는 연속 문자 시퀀스 여야 한다는 것을 처리하는 데 적합한 문자열은 0x 로 접두사를 할 수 있지만 중간 공간이나 불법 문자를 가질 수는 없습니다.
비 헬스 캐릭터가 발생하면 구문 분석이 중지되고, 비 헬스 캐릭터 문자가 처음에 있으면 0이 반환됩니다.
수치 범위를 벗어난 큰 16 진수 문자열의 경우 HEXDEC는 정확하게 처리하지 못할 수 있으며 특수 다수의 처리 기능을 사용해야합니다.
위의 기능을 이해하면 HEXDEC 기능을 사용하여 HEX 문자열을보다 정확하게 처리하고 데이터 변환에서 예상치 못한 오류를 피하는 데 도움이됩니다.