Подтвердить что ты не робот

Какой префикс для двоичного кода в PHP?

Это ни 0x, ни 0; что это? Есть?

4b9b3361

Ответ 1

Начиная с PHP 5.4+ префикс для двоичного номера:

0b

<ч/" > Для версии ealier такого префикса нет. Вместо этого вы можете использовать 0x для шестнадцатеричного.

Дополнительные сведения см. в разделе Цепочки руководства PHP.

Тем не менее, если вам действительно нужно писать значения, используя двоичный код перед PHP 5.4, вы можете использовать функцию bindec, которая берет строку содержащий двоичный файл, и возвращает соответствующее значение.

Например, следующая часть кода:

echo bindec('10011');

Вы получите:

19

Но обратите внимание, что вы не должны делать это слишком часто: вызов функции для выполнения этого каждый раз, когда выполняется script, очень плохо для исполнения ^^
Вместо этого это действительно лучшее решение для записи ваших значений с использованием шестнадцатеричного кода, где каждая цифра кодирует 4 бита.

Ответ 2

Новый в PHP 5.4 является двоичным префиксом 0b. Подумайте о переносимости при ее использовании; вы должны будете иметь возможность гарантировать, что сервер выполняет PHP 5.4 +.

Ответ 3

Из PHP 5.4+ есть, по сути, префикс: 0b.

Текущая информация в Документы PHP:

Двоичные целочисленные литералы доступны с PHP 5.4.0.

Чтобы использовать восьмеричную нотацию, перед номером следует указать 0 (ноль). Для использования шестнадцатеричной нотации предшествует номер с 0x. Для использования двоичной нотации предшествует номер с 0b.


Мар 24 '10 в 11:31 (оригинальный ответ):

Я не думаю, что он есть. Префикс 0, если для восьмеричного и 0x для шестнадцатеричного.

От Документы PHP:

Целое число может быть указано в десятичной (базовая 10), шестнадцатеричной (базовая 16) или восьмеричной (базовая 8) нотации, необязательно предшествующей знаку (- или +).

Чтобы использовать восьмеричную нотацию, перед номером следует указать 0 (ноль). Для использования шестнадцатеричной нотации предшествует номер с 0x.

Ответ 4

Отметьте руководство: PHP поддерживает только десятичное, шестнадцатеричное и восьмеричное целочисленное обозначение, но вы можете использовать bindec() вместо этого.

Кроме того, имейте в виду, что каждая шестнадцатеричная цифра представляет 4 бита, поэтому легко конвертировать между двоичной нотой и шестнадцатеричным. То же самое верно для восьмеричных, но по разным причинам он используется реже на практике.