Cytat(anonim1989 @ 5.01.2011, 15:41:50 )

Witam.Od niedawna analizuje kod ZF.I nie mogę jednego pojąć.Otóż mam w ZF taką metode jak fetchAll która zwraca mi wszystkie rekordy z wybranej tabeli.Gdy zaglądam do klasy Zend_Db_Table_Abstract w której znajduje się ta metoda fetchAll.
Zwraca ona obiekt klasy Zend_Db_Table_Rowset,klasy której konstruktor nic nie zwraca.Dlaczego zwraca obiekt?
Przecież powinna mi zwrócić tablice w której znajdują się rekordy?
bardzo proszę o pomoc
Dziwne, bo coś tu nie gra z tym, co napisałeś. Domyślnie dane zwracane są jako tablica asocjacyjna:
abstract class Zend_Db_Adapter_Abstract
{
/**
* User-provided configuration
*
* @var array
*/
protected
$_config = array();
/**
* Fetch mode
*
* @var integer
*/
protected $_fetchMode = Zend_Db::FETCH_ASSOC;
Poza tym, jeśli przypisujesz polu klasy X obiekt bazy danych w ten sposób:
$this->pole = Zend_Db_Table::getDefaultAdapter();
to tak naprawdę zwracasz to, co zostało zdefiniowane w klasie Zend_Db_Table_Abstract czyli
/**
* Default Zend_Db_Adapter_Abstract object.
*
* @var Zend_Db_Adapter_Abstract
*/
Dodatkowo możesz określić sposób zwracania danych za pomocą metody setFetchMode i chyba to jest rozwiązanie Twojego problemu.