Неверный Interger показывает в PHP error_log

1

когда я пытаюсь error_log целое число, которое имеет длину 10 и начиная с 0, оно показывает другое значение в php error.log

хвост -f/var/log/apache2/error.log

Я просто хочу понять, почему это происходит

без 0 перед целым error_log() показывает точное целое число, которое я передаю в error_log()

бывший

error_log (0543219878) => 22737 (с 0 впереди)

error_log (5543219878) => 5543219878 (без нуля)

Может кто-нибудь объяснить это.

  • 5
    Числа с начальным 0 считаются восьмеричными значениями. Таким образом, действительное значение целого числа не 543219878. Если вам нужно вывести его точно так, как есть, поместите его в кавычки и сделайте его строкой: error_log("0543219878");
  • 0
    спасибо Тиль Хельге ... на самом деле я выкидывал это как строку, а потом я выкидывал это как целое число, вот что заставило меня задуматься о том, что происходит.
Теги:
error-log

1 ответ

2
Лучший ответ

На самом деле ваш номер считается восьмеричным номером. Система восьмеричной цифры или короткая окта - это система счисления номер 8 и использует цифры от 0 до 7. Октальные цифры могут быть сделаны из двоичных цифр, группируя последовательные двоичные разряды в группы из трех (начиная справа).

Надеюсь, это поможет вам понять это.

Счастливое кодирование.

  • 0
    это имеет смысл .. :-) спасибо за информацию .. :-)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню