mio codice è:comportamento imprevisto in un array con alcuni valori
$arr=[02,05,07,08,09];
print_r($arr)
e l'uscita è:
Array
(
[0] => 2
[1] => 5
[2] => 7
[3] => 0
[4] => 0
)
Perché converte 08
e 09
a 0
??
mio codice è:comportamento imprevisto in un array con alcuni valori
$arr=[02,05,07,08,09];
print_r($arr)
e l'uscita è:
Array
(
[0] => 2
[1] => 5
[2] => 7
[3] => 0
[4] => 0
)
Perché converte 08
e 09
a 0
??
considerato come numero ottale. perché lo stai iniziando da zero.
$a = 1234; // decimal number
$a = -123; // a negative number
$a = 0123; // octal number (equivalent to 83 decimal)
$a = 0x1A; // hexadecimal number (equivalent to 26 decimal)
$a = 0b11111111; // binary number (equivalent to 255 decimal)
numeri iniziano con uno zero sono considerati in base 8.
Vedi PHP documenti: Integers - Syntax.
Per utilizzare la notazione ottale, precedere il numero con 0 (zero). Per usare la notazione esadecimale, precedere il numero con 0x. Per usare la notazione binaria, precedere il numero con 0b.
perché è un int. Metti un po 'dentro i valori –
in ottale non c'è 08 ha numero fino a 07 –