PHP XDebug Konfiguration

Verschachtelte Schleifen im Fluid Template

Bei (tiefer) Verschachtelung von Schleifen im Fluid Template, z.B. durch die Validierung von ObjectStorage oder eingebetteten Objekten und Fehlerausgabe per FormErrors, kann es zu der Fehlermeldung : "Maximum function nesting level of '100' reached" kommen.

Diese Fehlermeldung steht in Zusammenhang mit der Verwendung von XDebug.
In der xdebug.ini muss der Wert entsprechend höher gesetzt werden.
xdebug.max_nesting_level=nnn


XDebug Library rekonstruieren

Ein plötzlicher Ausfall (vermutlich durch ein Update verursacht) meiner XDebug Umgebung
zwang mich zu einer Rekonstruktion der entsprechenden Library.

PHP Version 5.4 lief noch problemlos, allerdings musste ich festellen, dass meine XDebug Library (xdebug.so) für 5.3 verschwunden war.
Also musste eine neue her.
XDebug verfügt über einen komfortablen Wizard um die korrekte Version zu ermitteln.
xdebug.org/wizard.php
Dort kann einfach die Asugabe von phpinfo() (Nicht der Quelltext) eingesetzt werden.
Danach kann die korrekte Version runtergeladen werden und es wird eine Anleitung präsentiert.

Die Erzeugung der nötigen Datei wurde bei mir allerdings durch den Fehler libtool: Version mismatch error
gestoppt.

Die erfolgreiche Erzeugung der Library konnte ich wie folgt lösen.

## Im XDebug Verzeichnis aus dem Download ausführen.
# phpize ausführen
phpize --clean
phpize

# Entfernen von aclocal.m4
rm aclocal.m4

# aclocal und autoconf ausführen
aclocal
autoconf

# Binary erzeugen
./configure
make

make install konnte bei mir entfallen, da ich mir lediglich die Library Datei aus dem Ordner "modules" in meine PHP Umgebung kopieren musste.

Voraussetzung für die Verwendung von Autotools ist bei einem Linux Sabayon (Gentoo) die Installation von Autoproject.