ThinkPHP 查詢資料主要提供下列幾類查詢:
public function read(){ $Dao = M("User"); // 查询数据 $list = $Dao->select(); //dump($list);// 用 dump() 可以在调试阶段查看数据是否已读取 // 模板变量赋值 $this->assign("list", $list); // 输出模板 $this->display(); }假設上面的範例對應的class 檔案為Lib/Action/ IndexAction.class.php ,那麼對應的模板檔案為Tpl/default/Index/read.html。 資料顯示範本範本檔案用於顯示剛才讀取的 User 表的資料。在學習階段,要不想使用模板,也可以直接使用 foreach 語法在 read() 操作內直接顯示讀取的資料。下面是模板對應的程式碼片段,我們將讀取的資料在一個表格中顯示出來:
<table border="1"> <tr> <th width="10%">ID</th> <th width="30%">用户名</th> <th width="30%">电子邮件</th> <th>注册时间</th> </tr> <volist name="list" id="vo"> <tr> <td align="center">{$vo['uid']}</td> <td>{$vo['username']}</td> <td>{$vo['email']}</td> <td>{$vo['regdate']|date='Y-m-d H:i',###}</td> </tr> </volist> </table>field() 查詢指定欄位select() 方法預設是查詢所有欄位的數據,如果要查詢某個或某些字段,就需要使用filed() 方法。 filed() 是屬於ThinkPHP 連貫操作中的一個方法,如在上面的例子中,只查詢使用者名稱和電子郵件地址,則查詢方法對應更改為:
$list = $Dao->field('username,email')->select();使用查詢條件使用ThinkPHP 連貫運算可以很方便的對資料查詢使用查詢條件。以下是一些簡單的查詢條件的範例。 where() 條件
…… // 构造查询条件 $condition['username'] = 'Admin'; // 查询数据 $list = $Dao->where($condition)->select(); ……
…… // 查询数据 $list = $Dao->order('uid DESC')->select(); ……這個範例就是資料依照ORDER BY uid DESC 進行查詢,而order() 方法中的參數意義跟SQL 語句中的意義完全一致。 LIMIT 限制在查詢中使用LIMIT 限定資料傳回的記錄數:
…… // 查询数据 $list = $Dao->limit('4,5')->select(); ……這個範例就是將第5-10 筆記錄取出,limit() 方法內的參數意義跟SQL 語句中的LIMIT 完全一致。 連貫操作ThinkPHP 中允許將資料物件中的各個方法寫在一起操作,如:
$list = $Dao->order('uid DESC')->limit('4,5')->select();更多ThinkPHP相關技術文章,請造訪
ThinkPHP教學欄位進行學習!
以上是ThinkPHP查詢資料select(findAll)方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!