현재 위치: > 최신 기사 목록> STR_PAD와 함께 Hexdec을 사용하여 숫자가 충분하지 않은 숫자로 16 진수를 고정 길이 소수로 변환하는 방법은 무엇입니까?

STR_PAD와 함께 Hexdec을 사용하여 숫자가 충분하지 않은 숫자로 16 진수를 고정 길이 소수로 변환하는 방법은 무엇입니까?

gitbox 2025-09-02

프로그래밍 프로세스 중에는 종종 16 진수를 소수점 숫자로 변환 해야하는 시나리오를 만날 수 있습니다. 때로는 16 진수의 길이가 기대치를 충족시키지 못하며 출력 길이가 고정되도록 0을 보충해야 할 수도 있습니다. PHP는 강력한 내장 기능 HEXDECSTR_PAD 를 제공 하므로이 작업을 쉽게 수행 할 수 있습니다. 이 기사는이 두 기능의 조합을 통해 16 진수 변환 및 비트 필 작업을 완료하는 방법을 자세히 소개합니다.

1. 헥 데크 함수 소개

HEXDEC 는 PHP의 함수로 육각 문자열을 소수 정수로 변환합니다. 16 진 문자열을 입력으로 받아들이고 해당 소수점 값을 반환합니다.

 <span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">hexdec</span></span><span>(</span><span><span class="hljs-string">'1A'</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$decimal</span></span><span>;  </span><span><span class="hljs-comment">// 산출 26</span></span><span>
</span></span>

위에서 볼 수 있듯이 Hexdec ( '1a')은 16 진수 '1a'를 10 진수로 변환합니다.

2. str_pad 함수 소개

str_pad 함수는 문자열을 지정된 길이로 채우는 데 사용됩니다. 문자열이 대상 길이보다 작은 경우 기본적으로 공간을 사용하여 지정된 패딩 문자를 기반으로 보충합니다. 수치 출력의 고정 길이를 보장하는 데 사용할 수 있습니다.

 <span><span><span class="hljs-variable">$padded</span></span><span> = </span><span><span class="hljs-title function_ invoke__">str_pad</span></span><span>(</span><span><span class="hljs-string">'123'</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>, </span><span><span class="hljs-string">'0'</span></span><span>, STR_PAD_LEFT);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$padded</span></span><span>;  </span><span><span class="hljs-comment">// 산출 00123</span></span><span>
</span></span>

이 예에서 str_pad는 문자열 '123' 을 길이 5의 문자열로 채우고 0으로 채우고 스트링 왼쪽에 0을 추가합니다.

3. hexdec과 str_pad를 결합하여 요구 사항을 달성합니다

이제 16 진수 값을 10 진수로 변환하고 출력 소수점 숫자가 고정 된 길이인지 확인해야합니다. 예를 들어, 우리는 16 진수 '1a' 를 10 진수로 변환하고 0으로 숫자로 패딩 할 수없는 부품 패딩으로 5 자리 숫자로 출력하려고합니다.

HEXDECSTR_PAD 기능을 결합하여이를 달성 할 수 있습니다.

 <span><span><span class="hljs-variable">$hex</span></span><span> = </span><span><span class="hljs-string">'1A'</span></span><span>;  </span><span><span class="hljs-comment">// 이것은 16 진수입니다</span></span><span>
</span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">hexdec</span></span><span>(</span><span><span class="hljs-variable">$hex</span></span><span>);  </span><span><span class="hljs-comment">// 소수로 변환하십시오</span></span><span>
</span><span><span class="hljs-variable">$fixedLengthDecimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">str_pad</span></span><span>(</span><span><span class="hljs-variable">$decimal</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>, </span><span><span class="hljs-string">'0'</span></span><span>, STR_PAD_LEFT);  </span><span><span class="hljs-comment">// 고정 길이에 대한 채우기</span></span><span>

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$fixedLengthDecimal</span></span><span>;  </span><span><span class="hljs-comment">// 산출 00026</span></span><span>
</span></span>

4. 코드 파싱

  1. Hexdec ($ hex)는 '1a'를 10 진수 26 으로 변환합니다.

  2. str_pad ($ decimal, 5, '0', str_pad_left)는 26을 길이 5의 문자열로 채우고, 채우기 문자는 '0' 이며, 문자열의 왼쪽으로 채 웁니다. 따라서 출력은 '00026' 입니다.

5. 유연성과 최적화

이런 식으로 출력 길이를 유연하게 조정할 수 있습니다. 예 들어, 출력 길이를 8 비트 또는 필요한 다른 것으로 변경할 수 있습니다.

 <span><span><span class="hljs-variable">$hex</span></span><span> = </span><span><span class="hljs-string">'1A'</span></span><span>;  </span><span><span class="hljs-comment">// 16 진수</span></span><span>
</span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">hexdec</span></span><span>(</span><span><span class="hljs-variable">$hex</span></span><span>);  </span><span><span class="hljs-comment">// 소수로 변환하십시오</span></span><span>
</span><span><span class="hljs-variable">$fixedLengthDecimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">str_pad</span></span><span>(</span><span><span class="hljs-variable">$decimal</span></span><span>, </span><span><span class="hljs-number">8</span></span><span>, </span><span><span class="hljs-string">'0'</span></span><span>, STR_PAD_LEFT);  </span><span><span class="hljs-comment">// 채우기8조금</span></span><span>

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$fixedLengthDecimal</span></span><span>;  </span><span><span class="hljs-comment">// 산출 00000026</span></span><span>
</span></span>

이러한 방식으로 간단한 매개 변수 조정으로 다른 요구 사항을 충족 할 수 있습니다.

6. 요약

HEXDECSTR_PAD를 결합하여 육각형 숫자를 고정 길이 소수점 숫자로 쉽게 변환 할 수 있습니다. HEXDEC은 육각형에서 10 진수 전환을 처리하는 데 사용되는 반면 STR_PAD는 숫자 숫자 출력의 수가 요구 사항을 충족하는지 확인합니다. 이런 식으로, 소수 또는 다수를 다루 든, 우리는 출력의 표준화를 보장하기 위해 숫자 보충을 쉽게 달성 할 수 있습니다.