Что обычно вызывает PHP переполнение стека? - PullRequest
0 голосов
/ 21 января 2009

Я нахожусь на сервере Windows IIS, обслуживающем некоторые сайты php Мы перенесли работающий сайт PHP на наш сервер, однако отправка одной из форм возвращает:

PHP has encountered a Stack overflow

При комментировании MYSQL INSERT и назначении переменных SESSION форма обрабатывается, однако это жизненно важные сегменты формы представления.

Любая помощь будет принята с благодарностью.

Ответы [ 4 ]

6 голосов
/ 21 января 2009

Слишком много рекурсии?

1 голос
/ 22 января 2009

Какую версию php вы используете? В некоторых старых версиях бесконечная (или очень глубокая) рекурсия вызывала переполнение стека, если я правильно помню. Сегодня вы получите более конкретное сообщение об ошибке («Максимальный уровень вложенности функции« 100 »достигнут, прерывание!»).

Вы упоминаете сессии как возможную причину; Вы храните сложные структуры данных в сессии? Сеансы сериализуются и не сериализуются между запросами, что, вероятно, может вызвать некоторые проблемы, если вы поместите в них слишком много вещей (хотя не уверен, что это слишком много). Может быть, вы могли бы уменьшить это?

1 голос
/ 21 января 2009

Для меня это обычно бесконечный цикл (включая бесконечную рекурсию)

0 голосов
/ 22 января 2009

[вне темы]

$stackoverflow = file_get_contents('http://stackoverflow.com/tags/php');
// voila, php encountered stackoverflow ^-^
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...