من رفتم سربازی اگر محتوای منو دوست داشتید و بدردتون خورد از من حمایت مالی کنید

پیاده سازی الگوریتم base32 در php

پیاده سازی الگوریتم base32 در php
پیاده سازی الگوریتم base32 در php

پیاده سازی الگوریتم base32 در php

در این نوشته به روش پیاده سازی الگوریتم base32 در زبان برنامه نویسی پی اچ پی می‌پردازیم تا بتوانید به سادگی آن را در پروژه‌ی خود استفاده کنید.

 

پیاده سازی الگوریتم base32 در php

برای پیاده سازی الگوریتم base32 در php می‌توانید از کد زیر استفاده کنید:

<?php

function base32_encode($data)
{
    $alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
    $binary = '';
    $result = '';

    // Convert the data to binary
    foreach (str_split($data) as $char) {
        $binary .= str_pad(decbin(ord($char)), 8, '0', STR_PAD_LEFT);
    }

    // Encode binary to Base32
    while (strlen($binary) % 5 != 0) {
        $binary .= '0';
    }

    for ($i = 0; $i < strlen($binary); $i += 5) {
        $chunk = substr($binary, $i, 5);
        $index = bindec($chunk);
        $result .= $alphabet[$index];
    }

    return $result;
}

function base32_decode($data)
{
    $alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
    $binary = '';
    $result = '';

    // Convert Base32 to binary
    foreach (str_split($data) as $char) {
        $index = strpos($alphabet, $char);
        if ($index === false) {
            throw new Exception("Invalid character in Base32 string");
        }
        $binary .= str_pad(decbin($index), 5, '0', STR_PAD_LEFT);
    }

    // Remove padding
    $binary = rtrim($binary, '0');

    // Convert binary to ASCII
    for ($i = 0; $i < strlen($binary); $i += 8) {
        $chunk = substr($binary, $i, 8);
        if (strlen($chunk) < 8) {
            $chunk = str_pad($chunk, 8, '0', STR_PAD_RIGHT);
        }
        $result .= chr(bindec($chunk));
    }

    return $result;
}

 

اگر نیاز به آموزش‌های بیش‌تری در ارتباط با زبان برنامه نویسی پی اچ پی دارید در بخش نظرات این نوشته برای ما ارسال کنید.

برای امتیاز به این نوشته کلیک کنید!
[کل: 1 میانگین: 5]