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)