在 php 中,123==0123 嗎?


答案是否定的。這是因為 0123 表示以 8 進位制(一個八進位制數)作為基底的 123,而它在十進位制中的等價值是 83。

在數字前加上 0 表示這是一個八進位制(基數為 8)的數字。這類似於 0x 表示十六進位制(基數為 16)數字的事實。

考慮下面的程式碼行 -

示例

 即時演示

var_dump(123);
var_dump(0123);

輸出

這將產生以下輸出 -

int 123
int 83

這是因為 0123 是一個八進位制表示法(注意開頭的 0),而 123 是一個十進位制數字。

現在考慮以下程式碼 -

示例

var_dump(79);
var_dump(079);

輸出

這將產生以下輸出 -

int 79
int 7

更新於:2020 年 4 月 6 日

492 次瀏覽

開啟你的 職業生涯之路

完成課程以取得認證

開始
廣告