현재 위치: > 최신 기사 목록> Hexdec + Bin2Hex를 사용하여 이진과 소수점을 변환하십시오

Hexdec + Bin2Hex를 사용하여 이진과 소수점을 변환하십시오

gitbox 2025-05-27

데이터 변환은 일일 PHP 프로그래밍에서 매우 일반적인 작업, 특히 기본 통신, 암호화 알고리즘 또는 데이터 구문 분석을 처리 할 때 종종 이진, 16 진수 및 소수점 간의 변환이 필요합니다. 기사 에서는 이진에서 10 진수로의 효율적인 전환을 달성하는 방법을 가르쳐 줄 것입니다.

Bindec을 직접 사용하지 않는 이유는 무엇입니까?

PHP는 Bindec () 함수를 제공하여 이진 문자열을 10 진수로 직접 변환합니다. 그렇다면 왜 여전히 Hexdec ()bin2Hex ()를 사용해야합니까?

대답은 : 유연성과 호환성이 높습니다.

  • Bindec ()는 01 으로 구성된 순수한 문자열에만 적합하며, 많은 수를 다룰 때 오류가 발생하기 쉽습니다.

  • bin2Hex ()hexdec () 은 원시 바이너리 문자열 을 처리 할 수 ​​있습니다.이 바이너리 스트링은 저수준 데이터 패킷, 암호화 또는 파일 형식 구문 분석을 처리 할 때보다 안정적이고 신뢰할 수 있습니다.

기본 사용 설명

1. bin2Hex () - 이진에서 16 진

이 함수의 기능은 이진 문자열을 변환하는 것입니다 ( 01 로 표시되는 문자열이 아닌 PHP의 이진 문자열 임).

 $data = "\x0A"; // 소수점입니다 10 바이트
$hex = bin2hex($data);
echo $hex; // 산출: 0a

2. hexdec () - 16 진수에서 소수점

16 진수를 소수 정수로 변환하십시오.

 $hex = "0a";
$decimal = hexdec($hex);
echo $decimal; // 산출: 10

이진에서 십진수를 구현하기 위해 결합 된 사용

일부 API 또는 기본 파일에서 이진 바이트 스트림을 읽고 소수점 값으로 변환하려고합니다. 코드는 다음과 같습니다.

 $binary = "\x01\x02"; // 이것은 두 바이트입니다: 00000001 00000010

$hex = bin2hex($binary);       // 산출: 0102
$decimal = hexdec($hex);       // 산출: 258

echo "소수점 값은입니다: " . $decimal;

여기서 "\ x01 \ x02" 는 실제로 바이너리 00000001 00000010 과 동일하며 조합 후 16 진수 0102 이며, 이는 정확히 258로 변환됩니다.

실제 사용 시나리오

온도를 표시하기 위해 소켓을 통해 2 바이트를 반환하는 하드웨어 장치와 통신하는 인터페이스를 개발한다고 가정하고,받는 원래 데이터는 다음과 같습니다.

 $socketData = "\x00\x7D"; // 이것은 16 진을 의미합니다 007D

온도 판독 값을 표시하기 위해 소수점 값으로 변환하려고합니다.

 $hex = bin2hex($socketData);   // 산출: 007d
$temperature = hexdec($hex);   // 산출: 125

echo "현재 온도는입니다: " . $temperature . "°C";

추가 : 빅 엔디안 및 소규모 엔디언 형식을 다루는 방법은 무엇입니까?

받은 데이터가 Little Endian으로 인코딩 된 경우 (낮은 바이트가 앞쪽에 있음) 바이트 순서를 먼저 반전시켜야합니다.

 $littleEndian = "\x7D\x00";
$bigEndian = strrev($littleEndian); // 큰 끝 순서로 전환하십시오
$decimal = hexdec(bin2hex($bigEndian)); // 올바르게 구문 분석 125

echo $decimal; // 산출: 125

요약

Bin2Hex ()Hexdec () 는 PHP에서 이진 데이터를 처리하는 데 매우 중요한 도구입니다. 파일 흐름, 기본 프로토콜, 데이터 구문 분석 및 기타 시나리오를 처리하는 데 특히 잘 수행됩니다. Bindec ()는 간단한 이진 문자열을 처리하는 데 더 적합하지만, Bin2Hex ()Hexdec () 의 조합은보다 복잡한 데이터 형식에 직면 할 때 의심 할 여지없이 더 강력하고 안정적입니다.

이러한 데이터 처리 기술을 심층적으로 배우려면 다음을 방문 할 수 있습니다.

<code> https://gitbox.net/php/hexdec-bin2hex-guide </code>

PHP 프로그래밍을보다 전문적이고 효율적으로 만들기 위해 이러한 기본 기술을 마스터하십시오!