Есть ли ограничение на глубину рекурсии ф-ций в php5?

  • Автор темы Автор темы golikov
  • Дата начала Дата начала

golikov

Новичок
Есть ли ограничение на глубину рекурсии ф-ций в php5?

Я тестировал на следующем:

PHP:
<?

function test($i)
{
    echo $i." ";
    test($i+1);
}

test(0);

?>
[php]

Этот пример выводит примерно следующее 0 1 2 .... 5900
Т.е. примернор на 6000 рекурсивных вызовах скрипт останавливается без объяснения причин.

Я пишу парсер и мне необходима глубокая рекурсия. Не исключено что потребуется глубина ~10 000 - 20 000. Позволяет ли PHP такое или мне стоит пересмотреть алгоритм?

Спасибо.
 
golikov
Что за парсер вы пишите?
Как уже сказали выше: глубина рекурсии определяется исключительно размерами разрешённой памяти.
 
Парсер XQuery.
Думаю стоит отказаться от рекурсии.

А почему я не получаю сообщение о том что память кончилась?
 
Фанат, что значит научиться пользоваться рекурсией? Не устраивать большую глубину?
 
умение пользоваться не характеризуется глубиной
разве это не очевидно?
 
golikov, объясни нам, откуда у тебя берётся такая глубина?
я даже предположить не берусь - как её такую можно получить-то? при парсинге хмл-я. Откуда там больше 10 возьмётся-то?
 
Тор, не очевидно. Я не понимаю как мне научиться пользоваться рекурсией. Большая рекурсия - это плохо всегда?
 
Сверху