Пожалуйста, помогите мне понять этот пример?
Почему он печатает «10» десять раз? Почему бы не 0 1 2 3 4 5 6 7 8 9?
<?php
function test()
{
static $count = 0;
$count++;
if ($count < 10) {
test();
}
echo "\n$count";
}
test();
Если он меньше 10, он повторяется и не выводится, когда он равен 10, он падает до echo
и печатает 10 для 10 раз, которые он повторял, когда он выходит каждый раз.
если ты echo
перед повторением это будет работать, как вы описали. Кроме того, вам нужно вывести, прежде чем увеличивать, иначе вы не получите 0
:
function test()
{
static $count = 0;
echo "\n$count";
$count++;
if ($count < 10) {
test();
}
}
test();
Других решений пока нет …