я случайно сделать оператор деления в PHP, как это:Division оператор в PHP
$a = 012; //or 0012 or even 00012
echo $a/4;
echo gettype($a/4);
я получил результат: 2.5 double
. // Я не знаю, почему вывод 2.5
.
Я попробовал еще раз:
$a=12;
echo $a/4;
echo gettype($a/4);
Этот вывод 3 Integer
воли.
Я прочитал документацию в https://secure.php.net/manual/en/language.operators.arithmetic.php
, но все еще не могу это понять.
Может ли кто-нибудь мне помочь?
Как я понимаю, если '012' является восьмеричным, это будет« автокорректировать »от восьмеричного до десятичного? –
Нет. Нет необходимости изменять его тип данных, потому что он уже численный. –
Как он может знать, что '012' - восьмеричный, а' 4' - десятичный? Я попытался сменить оператор деления на это: '$ a = 012; $ Ь = 04; echo $ a/$ b, echo gettype ($ a/$ b) ' Я все еще получаю' 2.5 double'. Я использовал caculator в окнах, сменил режим на Oct (позиция для восьмеричного) и выполнил оператор деления '12/4', результатом будет' 2'. Я до сих пор смущаюсь по этому поводу. –