Danke für den Code. Das mit dem IF/ELSE könnte man hier mit einem Array deutlich übersichtlicher bauen, aber wie Sie schon schreiben
> das kann doch wohl kaum 23 MB brauchen
Ich denke, das "Problem" liegt eher im Loop, in welchem die Seiten abgearbeitet werden. Genauer darin, dass häufig eine Seite übersprungen wird. In diesem Fall "stapelt" SoSci Survey nämlich die Seitenabfolge, und das kann ziemlich umfangreich werden.
Wenn (!) Sie keinen Zurück-Knopf anbieten, und sich SoSci Survey daher ohnehin nicht merken muss, in welcher Abfolge die Seiten bisher gezeigt wurden, dann fügen Sie doch bitte oben im PHP-Code mal folgenden Befehl ein und prüfen Sie, ob der Speicherverbrauch sinkt:
dropHistory();