Heim > PHP-Framework > Denken Sie an PHP > Wie das Thinkphp-Framework mit der Datenbank arbeitet (Zusammenfassung)

Wie das Thinkphp-Framework mit der Datenbank arbeitet (Zusammenfassung)

藏色散人
Freigeben: 2020-01-29 14:08:27
nach vorne
3222 Leute haben es durchsucht

Wie das Thinkphp-Framework mit der Datenbank arbeitet (Zusammenfassung)

1. Daten hinzufügen

1.1 Daten hinzufügen

$user           = new User;
$user->name     = 'thinkphp';
$user->email    = 'thinkphp@qq.com';
$user->save();
$user = new User;
$user->save([
    'name'  =>  'thinkphp',
    'email' =>  'thinkphp@qq.com'
]);
Nach dem Login kopieren

1.2 Nicht filtern -Datentabellen Felddaten

$user = new User;
// 过滤post数组中的非数据表字段数据
$user->allowField(true)->save($_POST);
Nach dem Login kopieren

1.3 Geben Sie bestimmte Felddaten an

$user = new User;
// post数组中只有name和email字段会写入
$user->allowField(['name','email'])->save($_POST);
Nach dem Login kopieren

1.4 Fügen Sie mehrere Datenelemente hinzu

$user = new User;
$list = [
    ['name'=>'thinkphp','email'=>'thinkphp@qq.com'],
    ['name'=>'onethink','email'=>'onethink@qq.com']
];
$user->saveAll($list);
Nach dem Login kopieren

1.5 Statische Methode

$user = User::create([
    'name'  =>  'thinkphp',
    'email' =>  'thinkphp@qq.com'
]);
echo $user->name;
echo $user->email;
echo $user->id; // 获取自增ID
Nach dem Login kopieren

2. Daten aktualisieren

2.1 Suchen und aktualisieren

$user = User::get(1);
$user->name     = 'thinkphp';
$user->email    = 'thinkphp@qq.com';
$user->save();
Nach dem Login kopieren

2.2 Daten direkt aktualisieren

$user = new User;
// save方法第二个参数为更新条件
$user->save([
    'name'  => 'thinkphp',
    'email' => 'thinkphp@qq.com'
],['id' => 1]);
Nach dem Login kopieren

2.3 Nicht filtern -Datentabellen Feld

$user = new User;
// 过滤post数组中的非数据表字段数据
$user->allowField(true)->save($_POST,['id' => 1]);
Nach dem Login kopieren

2.4 Bestimmte Felder angeben

$user = new User();
// post数组中只有name和email字段会写入
$user->allowField(['name','email'])->save($_POST, ['id' => 1]);
Nach dem Login kopieren

2.5 Stapelaktualisierungsdaten

$user = new User;
$list = [
    ['id'=>1, 'name'=>'thinkphp', 'email'=>'thinkphp@qq.com'],
    ['id'=>2, 'name'=>'onethink', 'email'=>'onethink@qq.com']
];
$user->saveAll($list);
Nach dem Login kopieren

2.6 Statische Methode

User::where('id', 1)
    ->update(['name' => 'thinkphp']);
Nach dem Login kopieren

2.7 Automatische Erkennung

2.7.1 Aktualisierte Daten anzeigen

// 实例化模型
$user = new User;
// 显式指定更新数据操作
$user->isUpdate(true)
    ->save(['id' => 1, 'name' => 'thinkphp']);
Nach dem Login kopieren

2.7.2 Neue Daten anzeigen

$user = User::get(1);
$user->name = 'thinkphp';
// 显式指定当前操作为新增操作
$user->isUpdate(false)->save();
Nach dem Login kopieren

3. Daten löschen

3.1 Aktuelles Modell löschen

$user = User::get(1);
$user->delete();
Nach dem Login kopieren

3.2 Löschen nach Primärschlüssel

User::destroy(1);
// 支持批量删除多个数据
User::destroy('1,2,3');
// 或者
User::destroy([1,2,3]);
Nach dem Login kopieren

3.3 Bedingt löschen

User::destroy(function($query){
    $query->where('id','>',10);
});
Nach dem Login kopieren

4. Daten abfragen

4.1 Einzelne Daten abrufen

// 取出主键为1的数据
$user = User::get(1);
echo $user->name;
// 使用查询构造器查询满足条件的数据
$user = User::where('name', 'thinkphp')->find();
echo $user->name;
Nach dem Login kopieren

4.2 Mehrere Daten abrufen

// 根据主键获取多个数据
$list = User::all('1,2,3');
// 或者使用数组
$list = User::all([1,2,3]);
// 对数据集进行遍历操作
foreach($list as $key=>$user){
    echo $user->name;
}
Nach dem Login kopieren
rrree

4.3 Ermitteln Sie den Wert eines Felds oder einer Spalte

// 使用查询构造器查询
$list = User::where('status', 1)->limit(3)->order('id', 'asc')->select();
foreach($list as $key=>$user){
    echo $user->name;
}
Nach dem Login kopieren

Weitere verwandte ThinkPHP-Kenntnisse finden Sie unterFragenTthinkPHP-Tutorial !

Das obige ist der detaillierte Inhalt vonWie das Thinkphp-Framework mit der Datenbank arbeitet (Zusammenfassung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage