2009-09-19 1 views
4

есть ли способ автоматического преобразования из массива в Zend_Db_Table_Row или Zend_Db_Table_Rowset?массив в Zend_Db_Table_Row zend framework

Форма Zend_Db_Table_Row вы можете получить массив с помощью параметра toArray(), но мне было интересно, выходит ли что-то вроде противоположности этого?

До сих пор я реализовал функцию fill ($ data), которая взяла массив и установила атрибуты Zend_Db_Table_Row.

Конечно, ключи массива совпадают с атрибутами Zend_Db_Table_Row.

Thanx!

ответ

5

Проверьте метод fetchRow() Zend_Db_Table. Там вы можете это найти. Я думаю, вы можете кормить массив конструктору, как это:

$data = array(
     'table' => $yourDbTableModel, 
     'data'  => $yourArray, 
     'readOnly' => $iGuessShouldBeZero, 
     'stored' => true 
    ); 
$row = new Zend_Db_Table_Row($data); 
+0

Спасибо! Вы оба очень хорошо! Вы оба решили мою проблему! – 2009-09-19 22:41:36

2

Я думаю, что это должно сделать трюк:

$myRow = new Zend_Db_Table_Row(
    array(
     'data' => array(/* your array with data */ ) 
    ) 
); 

Таким образом, если вы предоставляете конструктор с массивом конфигурации, который содержит ключ «данные», которые в свою очередь содержат массив с данными, вы должны быть хорошими.

Для получения дополнительной информации посетите Zend_Db_Table_Row_Abstract в вашей библиотеке Zend.

 Смежные вопросы

  • Нет связанных вопросов^_^