Getting data from a database
Most applications today use databases. Be it a small website or a social network, at least some parts are powered by databases. Yii introduces three ways which allow you to work with databases:
Active Record
Query builder
SQL via DAO
{
protected function afterAction($action)
{
$time = sprintf("%0.5f", Yii::getLogger()->getExecutionTime());
$memory = round(memory_get_peak_usage()/(1024*1024),2)."MB";
echo "Time: $time, memory: $memory";
parent::afterAction($action);
}
public function actionAr()
{
$actors = Actor::model()->findAll(array("with" => "films",
"order" => "t.first_name, t.last_name, films.title"));
echo "
- ";
foreach($actors as $actor)
{
echo "";
echo $actor->first_name." ".$actor->last_name;
echo "
- ";
foreach($actor->films as $film)
{
echo "";
echo $film->title;
echo "";
}
echo "
echo "";
}
echo "
}
public function actionQueryBuilder()
{
$rows = Yii::app()->db->createCommand()
->from("actor")
->join("film_actor", "actor.actor_id=film_actor.actor_id")
->leftJoin("film", "film.film_id=film_actor.film_id")
->order("actor.first_name, actor.last_name, film.title")
->queryAll();
$this->renderRows($rows);
}
public function actionSql()
{
$sql = "SELECT * FROM actor a
JOIN film_actor fa ON fa.actor_id = a.actor_id
JOIN film f ON fa.film_id = f.film_id
ORDER BY a.first_name, a.last_name, f.title";
$rows = Yii::app()->db->createCommand($sql)->queryAll();
$this->renderRows($rows);
}
public function renderRows($rows)
{
$lastActorName = null;
echo "
- ";
foreach($rows as $row)
{
$actorName = $row["first_name"]." ".$row["last_name"];
if($actorName!=$lastActorName){
if($lastActorName!==null){
echo "
echo "";
}
$lastActorName = $actorName;
echo "";
echo $actorName;
echo "
- ";
}
echo "";
echo $row["title"];
echo "";
}
echo "
}
}
http://m.bbyears.com/seo/51611.html
推荐访问:倚天屠龙记 宜家 易企秀 yii框架 yii2打印sql语句 一点资讯