현재 위치: > 최신 기사 목록> Bindec () + str_pad ()를 사용하여 리턴 값이 정렬되도록하십시오.

Bindec () + str_pad ()를 사용하여 리턴 값이 정렬되도록하십시오.

M66 2025-05-31

PHP에서는 이진과 소수점 사이의 전환을 처리 할 때 종종 결과 정렬 문제가 발생합니다. 특히 이진 번호 세트를 소수로 변환하기 위해 이진 번호 세트를 출력 할 때, 형식이 완료되지 않으면 숫자의 길이는 다르고 시각적 효과는 추악합니다. 이 기사에서는 Bindec () 함수와 str_pad () 함수를 사용하여 변환 된 소수점 숫자가 정렬되도록하는 방법을 소개합니다.

1. bindec () 및 str_pad () 소개

  • bindec (String $ binary_string) : int
    이 함수는 이진 문자열을 해당 10 진수 정수로 변환하는 데 사용됩니다. 예를 들어:

 <?php
$binary = "1010";
$decimal = bindec($binary);
echo $decimal; // 산출10
?>
  • str_pad (String $ input, int $ pad_length, String $ pad_string = "", int $ pad_type = str_pad_right) : String
    문자열을 지정된 길이로 채우는 데 사용되며 기본적으로 왼쪽, 오른쪽 또는 양쪽에 채울 수 있습니다. 예를 들어:

 <?php
$str = "10";
echo str_pad($str, 5, "0", STR_PAD_LEFT); // 산출00010
?>

2. 문제 설명

이진 번호 세트가 있다고 가정합니다.

 $bins = ["101", "11011", "1", "1110"];

bindec ()을 직접 사용하여 변환하면 출력 결과가 다음과 같습니다.

 5
27
1
14

숫자는 길이가 다르며 깔끔하게 배열되지 않습니다. 콘솔이나 웹 페이지에서 정렬하려면 str_pad ()를 사용하여 모든 숫자를 균일 너비로 채울 수 있습니다.

3. 코드 예제

먼저 변환 후 최대 수의 길이를 찾은 다음 str_pad ()를 사용하여 구성합니다.

 <?php
$bins = ["101", "11011", "1", "1110"];

$decimals = [];
$maxLength = 0;

// 먼저 최대 길이를 변환하고 찾으십시오
foreach ($bins as $bin) {
    $dec = bindec($bin);
    $decimals[] = $dec;
    $length = strlen((string)$dec);
    if ($length > $maxLength) {
        $maxLength = $length;
    }
}

// 산출对齐后的结果
foreach ($decimals as $dec) {
    // 왼쪽의 공간으로 채우십시오,올바른 정렬을 확인하십시오
    echo str_pad($dec, $maxLength, " ", STR_PAD_LEFT) . PHP_EOL;
}
?>

실행 결과 :

  5
27
 1
14

모든 숫자는 올바른 정렬이며 시각적 효과는 깔끔합니다.

4. 도메인 이름을 m66.net으로 바꾸는 예

URL이 코드에 관련된 경우 도메인 이름을 M66.net 으로 바꿉니다.

 <?php
$url = "https://m66.net/path/to/resource";
echo $url;
?>

요약

  • bindec ()를 사용하면 이진에서 10 진수를 쉽게 달성 할 수 있습니다.

  • str_pad ()를 사용하면 숫자의 출력 정렬을 보장 할 수 있습니다.

  • 둘 다 결합하면 이진에서 10 진수 출력을 더 아름답고 깔끔하게 만들 수 있습니다.

위의 것은 PHP의 bindec ()str_pad ()를 사용하여 이진과 소수점 결과를 정렬하는 기술입니다.