Error mit foreach()

es gibt seit der Aktivierung eines neuen Wordpress-Plugins bei mir oft solche Fehlermeldungen:

XXX steht für:
493
709
736
775
802
und vielleicht noch mehr, hab aber nicht mehr entdeckt.

So, erstens hab ich keine Ahnung, was foreach() genau macht (nur so in etwa von de.php.net).
und zweitens weiß ich schon gar nicht, wie ich den Fehler beheben könnte. Jemand eine Idee? PHP-Code ist hier.
Danke :slight_smile:

mfg
Pas

foreach iteriert über Arrays (oder auch Objekte). Die Fehlermeldung bedeutet, dass irgend ein anderer Datentyp gegeben wurde, über den man nicht iterieren kann, z.B. ein String:

$foo = '123'; foreach ($foo as $bar) { }

Da der Fehler im Code steckt, kann man da nicht wirklich etwas tun, außer die Fehler auszubessern; das wäre aber eher der Job des Plugin-Autors. Alternativ könntest du auch versuchen, Warnungen mit error_reporting() auszuschalten. Fehler im Script behebt das natürlich nicht. :wink:

danke!
ok und wie geht das mit dem error reporting?
Sprich: was muss ich wo reinschreiben?

An den Anfang der Datei (nach <?php):

Das schaltet speziell Warnungen aus, andere Fehler wie z. B. fatal errors werden noch angezeigt.

oder hier mal schaun de3.php.net/error_reporting

@scram
meinst du nicht eher error_reporting(error_reporting)( ^ E_WARNING);

ok, danke, morgen hab ich Zeit (und Zugang), ich werde es dann versuchen! :slight_smile:

@comjag: ja, deines klingt logischer :wink:

nee, das von comjac ist falsch…

setzt das error Reporting

error_reporting() gibt das aktuelle zurück, und der ^-operator nimmt E_WARNING auf binärer ebene raus…