Sie erhalten diese Exception
da dies ein erwartetes Verhalten ist. Zend verwendet PDO
um sein Zend\Db\ResultSet\Resultset
zu erhalten die von Zend\Db\TableGateway\TableGateway
zurückgegeben wird . PDO-Ergebnissätze verwenden standardmäßig einen Vorwärts-Cursor, was bedeutet, dass Sie den Satz nur einmal durchlaufen können.
Weitere Informationen zu Cursorn finden Sie unter Wikipedia und dies Artikel.
Als Zend\Db\ResultSet\Resultset
implementiert den PHP Iterator
Sie können ein Array des Satzes mit Zend\Db\ResultSet\Resultset:toArray()
extrahieren -Methode oder mithilfe von iterator_to_array()
Funktion. Seien Sie jedoch vorsichtig, wenn Sie diese Funktion bei potenziell großen Datensätzen verwenden! Eines der besten Dinge an Cursorn ist genau, dass sie vermeiden, alles auf einmal einzugeben, falls der Datensatz zu groß ist, sodass es Zeiten gibt, in denen Sie nicht alles auf einmal in ein Array einfügen möchten.