roman numeral 1005700 1920
Quelle: Pixabay, TanteTati

A non well formed numeric value encountered

Dieser Fehler wird mir in einer Zeile angezeigt, in der ich ein Array mit WordPress-Post-IDs befüllen will. Dafür habe ich am Anfang der Funktion eine leere Variable deklariert. Post IDs in WordPress sind doch Zahlen?

Das eigentliche Problem ist dann nicht in jener Zeile zu finden, auf die sich in diesem Fall die Fehleranzeige bezieht, sondern an der Stelle an der die Variable die befüllt werden soll, als String ($variablenname = '') deklariert wurde. Es müsste dann heißen $variablenname = array(); , resp. man muss dafür keine leere Variable definieren. Gibt auch keine Notice, es sei denn befüllt wird das Array unter definierten Bedingungen, und das Array soll später unabhängig davon abgefragt werden, dann sollte es die Variable auch geben, wenn die Bedingungen nicht zutreffen.

Seit PHP 7.1 wird eine als (auch leerer) String definierte Variable nicht mehr automatisch zu einem Array konvertiert, wenn ihr zum ersten Mal ein Wert mit eckigen Klammern zugewiesen wird.

Kommentar schreiben

E-Mail-Adresse wird nicht veröffentlicht.

Overlay background for modal content