Задать вопрос
@dmitriyuvin
FullStack developer ( Laravel & Vue )

Почему не инкрементируется переменная?

$var= 0;

function up($var)
{
    return $var++;
}

echo up($var); // 0
echo $var++; // 0

Почему не увеличивает при первом вызове?
  • Вопрос задан
  • 154 просмотра
Подписаться 1 Простой 1 комментарий
Решение пользователя Александр Аксентьев К ответам на вопрос (4)
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Для начала оно и со второго раза не заинкрементируется потому что вы её локально в функции инкрементируете, и во втором вызове всё равно 0 передаётся.

Во-вторых постфиксный инкремент сразу возвращает текущее значение, и только потом увеличивает значение.

++$var и тогда вернет сразу 1
(и при втором вызове тоже сразу 1 будет, 2 не появится никак)
Ответ написан
Комментировать