base_convert

funkcja

Konwertuje liczbę między dowolnymi systemami liczbowymi (od podstawy 2 do 36).

base_convert(string $num, int $from_base, int $to_base): string

base_convert to uniwersalny konwerter systemów liczbowych — zamienia $num z podstawy $from_base na podstawę $to_base, gdzie obie muszą być w zakresie 2–36. Cyfry powyżej 9 są reprezentowane małymi literami (a = 10, b = 11 itd.). Wynik jest zwracany jako string. Dla typowych konwersji binarnych i szesnastkowych wygodniejsze są dedykowane funkcje (decbin, dechex itd.), ale base_convert sprawdza się przy egzotycznych podstawach. Uwaga: dla bardzo dużych liczb funkcja może tracić precyzję ze względu na wewnętrzną reprezentację zmiennoprzecinkową (float).

<?php
declare(strict_types=1);

echo base_convert('ff', 16, 10);    // wynik: 255  (hex → dec)
echo base_convert('255', 10, 16);   // wynik: ff   (dec → hex)
echo base_convert('101', 2, 10);    // wynik: 5    (bin → dec)
📘 Naucz się w lekcji →