Преобразование целых чисел в шестнадцатеричные значения в PHP

Как преобразовать числа в первом классе в PHP в числа во втором классе, есть ли встроенная функция для преобразования чисел? Также верно ли мое название « Преобразовать целое число в шестнадцатеричные значения »?

class Permission { const READ = 1; const UPDATE = 2; const DELETE = 4; const COMMENT = 8; const GRANT = 16; const UNDELETE = 32; const WHATEVER = 64; } 

в этот

 class Permission { const READ = 0x0001; const UPDATE = 0x0002; const DELETE = 0x0004; const COMMENT = 0x0008; const GRANT = 0x0010; const UNDELETE = 0x0020; const WHATEVER = 0x0040; } 

ОБНОВИТЬ

Чтобы разработать немного больше того, что я пытаюсь сделать.
В настоящее время я использую первый класс с классом битмаски для настроек,
кто-то предложил мне перейти на формат во втором классе.
Однако я не знал, как они придумали цифры стиля 0x0020 из числа в моем первом классе.

Теперь я вижу, как получить 20 из 32, но я не знаю, как и почему они добавили 0x00 перед ним, чтобы сделать 0x0020 для замены моего оригинального 32

Solutions Collecting From Web of "Преобразование целых чисел в шестнадцатеричные значения в PHP"

Я немного запутался здесь … 0x01 = 1. 0x020 = 32 и т. Д.

Вы ищете некоторые из форматировщиков строк, которые доступны в printf / sprintf? Маркер% x можно использовать для вывода шестнадцатеричных значений.

edit: Кроме того, да, ваши преобразования верны.

Вы хотите:

dechex()

http://php.net/manual/en/function.dechex.php

Которая является десятичной до шестнадцатеричной.

Вы не можете просто ввести шестнадцатеричные числа для начала?

Попробуйте sprintf () / printf (), чтобы конвертировать их на лету:

 printf('%x', 42); // 2a