2017-06-12 44 views
-1

數字(int,float)如何以PHP中的0分隔。劃分一個由0開頭的數字

下面是我的嘗試:

echo 016/2; // 7 
echo 08/2; // Invalid numeric literal 
echo 09/2; // Invalid numeric literal 
echo 010/2; // 4 
echo 00000000000000000010/2; // 4 
echo 07/2; // 3.5 Correct 

我已經嘗試了上述計算作爲一個字符串,int和float。

+3

如[PHP文檔](http://www.php.net/manual/en/language.types.integer.php)中所述,「由0引導」的數字被PHP視爲八進制值) –

回答

2

整數常量在PHP手冊/語言參考/類型記錄/ Integers

整數可以用十進制來指定(底爲10),十六進制(基數 16),八進制(基數8)或二進制(基數2)符號,可選地在 之前以符號( - 或+)表示。

二進制整數文字自PHP 5.4.0起可用。

要使用八進制表示法,請在數字前加上0(零)。要使用 十六進制符號在數字前面加上0x。要使用二進制 符號在數字前面加上0b。

08是一個無效的八進制數,就像0xZZZ是無效的十六進制。

+0

感謝您解釋爲什麼'08'引發錯誤 – user3284463