Moin.
Ein "interessantes" Problem beschäftigt mich momentan. Ich habe also ein Formular mit Listbox...
...dessen Inhalt ich auslesen möchte. Dazu gibt's 'ne Schleife:
if (count($books) > 0) {
for ($i = 0; $i < count($books); $i++) {
if (isset($books[$i])) {
// Buch sichern
}}}
Das funktioniert prima, so lange mind. ein Eintrag in der Listbox steht. Ist die jedoch leer, sollte IMHO $books ein Array mit "0" Einträgen sein. Aber count($books) liefert trotzdem "1".
Ok, dachte ich, sei pfiffig, live and let live, und prüfe per "isset($books[$i])", ob ich gerade angelogen werde. Das wird jedoch brutal quittiert mit "Warning: Uninitialized string offset: 0 in ...".
Nun könnte man natürlich das Error-Reporting toleranter einstellen. Möchte ich aber nicht, weil ich so stolz auf meinen ansonsten so "schulmäßigen" Code bin.
Hat also jemand 'ne Erklärung für count($books)== 1 und 'nen Tipp zum Umgehen der Warnung?
Tom