$data['name']= 'thinkphp';
$data['email']= '[email protected]';
$data['status']= 1;
$User = M('User');
$data = $User->create($data);
dump($data);
Create方法創建的數據對象是保存在內存中,並沒有實際寫入到數據庫中,直到使用add
或者save
方法纔會真正寫入數據庫。
$User->add();// 把用戶對象寫入數據庫
$User->data($data)->add();
如果在create方法之前調用field方法,則表示只允許創建指定的字段數據,其他非法字段將會被過濾,例如:
$data['name'] = 'thinkphp';
$data['email'] = '[email protected]';
$data['status'] = 1;
$data['test'] = 'test';
$User = M('User');
$data = $User->field('name,email')->create($data);
dump($data);
$User = M("User"); // 實例化User對象
// 查找status值爲1name值爲think的用戶數據
$data = $User->where('status=1 AND name="thinkphp"')->find();
dump($data);
讀取數據是指讀取數據表中的一行數據(或者關聯數據),主要通過
find
方法完成讀取數據集其實就是獲取數據表中的多行記錄(以及關聯數據),使用
select
方法讀取字段值其實就是獲取數據表中的某個列的多個或者單個數據,最常用的方法是
getField
方法$User = M("User"); // 實例化User對象
// 要修改的數據對象屬性賦值
$User->name = 'ThinkPHP';
$User->email = '[email protected]';
$User->where('id=5')->save(); // 根據條件更新記錄
如果只是更新個別字段的值,可以使用setField
方法。
使用示例:
$User = M("User"); // 實例化User對象
// 更改用戶的name值
$User-> where('id=5')->setField('name','ThinkPHP');
而對於統計字段(通常指的是數字類型)的更新,系統還提供了setInc
和setDec
方法。
$User = M("User"); // 實例化User對象
$User->where('id=5')->setInc('score',3); // 用戶的積分加3
$User->where('id=5')->setInc('score'); // 用戶的積分加1
$User->where('id=5')->setDec('score',5); // 用戶的積分減5
$User->where('id=5')->setDec('score'); // 用戶的積分減1
$User = M("User"); // 實例化User對象
$User->where('id=5')->delete(); // 刪除id爲5的用戶數據
$User->delete('1,2,5'); // 刪除主鍵爲1,2和5的用戶數據
$User->where('status=0')->delete(); // 刪除所有狀態爲0的用戶數據