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

Это не ни один 0x ни 0;что это? Есть ли?

31
задан Brad Koch 7 September 2012 в 21:17
поделиться

3 ответа

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

0b


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

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

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

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

echo bindec('10011');

Вы получите:

19

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

47
ответ дан 27 November 2019 в 21:32
поделиться

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

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

1
ответ дан 27 November 2019 в 21:32
поделиться

Начиная с PHP 5.4+, на самом деле существует префикс: 0b .

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

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

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


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

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

Из Документы PHP :

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

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

2
ответ дан 27 November 2019 в 21:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: