Jump to content
Larry Ullman's Book Forums

Returning Objects Using Dao


Recommended Posts

Hi Larry,


When I test the DAO in your book: (page 186) 

$q = 'SELECT * FROM page WHERE id=1';
$cmd = Yii::app()->db->createCommand($q);
$cmd->setFetchMode(PDO::FETCH_CLASS, 'Page');
$model = $cmd->queryRow();
// Use $model->title et al.


I can not retrieve $model->title which is null. Also, I use $model-> attributes, the result is :

Array ( [live] => 0 [id] => [user_id] => [title] => [content] => [date_updated] => [date_published] => ) 


Strangely, only 'live' is not null. The expected result is:

Array ( [id] => 1 [user_id] => 1 [live] => 0 [title] => ewwq [content] => wsds [date_updated] => 2013-04-04 23:48:50 [date_published] => 2013-04-04 ) 


I use other tables and corresponding class to test, it also dose not work.

I really hope you can explain it. By the way, I really appreciate your work.


Thank You


Link to comment
Share on other sites

Thank you Antonio.

1. I have tried PDO::FETCH_OBJ, it returns an  stdClass Object. And it works

2. I tried  $model['title'] with PDO::FETCH_CLASS , it won't work, since $model is a Page AR object.


What I want to get is a Page AR object with correct properties using DAO(I know how to do the same thing using AR instead of DAO). Since Larry mentioned DAO has "the ability to fetch into specific object types".  And I really want to make it work ,but did not get the right answer <_< 


Again, thank you! :) 

Link to comment
Share on other sites


  • Create New...