almost 2 years ago

其實CodeIgniter是有使用SQL ORM的,他的ORM框架是ActiveRecord,也是一款有名的ORM。

使用ORM的好處就不多說了,利大於弊,好用就好orz...

這篇也算是個筆記,將會記錄CodeIgniter如何擷取資料與新增等動作,章節應該是不多,

畢竟常用的也就那幾項動作,頂多個加密之類的,但加密其實可以直接寫在SQL那邊。

Models

<?php
class NameModel extends CI_Model {
  public function getAllName() {
    $query = $this->db->get('test');
    //$query = $this->db->get_where('test', array('id' => '1'));
    
    foreach ($query->result() as $row) {
      echo $row->id;
      echo $row->name;
    }
    return $query->result();
  }
}
?>

上面可以看到我們第一行query是取得test資料庫全部的資料,
下一行則是使用where取得我們所想要的資料,然而getWhere已經不適用了,要注意目前許多方法有改。

Controllers

<?php
class Name extends CI_Controller {
  public function index() {
  
    $this->load->model('NameModel', '', TRUE);
    $data = $this->NameModel->getAllName();
    
    foreach ($data as $row) {
      $name['name'] = $row->name;
      $this->load->view('test', $name);
    }
  }
}
?>

這邊很簡單的,加入我們所撰寫好的Model,並且打開資料庫以及取得資料。
回傳的時候會使用$name['name']這種命名方式,為了讓view取得變數。

Views

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>CI教學</title>
  </head>
  <body>
    <?= $name?></br>
  </body>
</html>

我們這邊可以使用<?= $name?>語法,對應剛剛我們所定義的變數['name']
就可以取得資料了。

對於CodeIgniter還不是很了解,所以這次純粹是個筆記,我認為學新東西都得由深入淺,
這也是朋友點醒我的,原先我每次研究東西都是從基礎架構開始研究,但這樣其實會花費太多時間。
所以先將整個框架使用順手後,再去了解其原理,我想也會比較快理解。

← [Facebook] 取得永久的AccessToken [MySQL] 簡單InnerJoin多個表並創造View →
 
comments powered by Disqus