当前位置: 首页> 最新文章列表> ThinkPHP5 添加数据详解:ORM与SQL两种方式实例教程

ThinkPHP5 添加数据详解:ORM与SQL两种方式实例教程

gitbox 2025-07-18

简介

在使用ThinkPHP5框架开发时,添加数据是非常常见的操作。本文将通过实例讲解ThinkPHP5中添加数据的具体方法,介绍如何通过ORM模型和原生SQL两种方式实现数据插入。

使用ORM方式添加数据

定义模型

在使用ORM方式添加数据之前,需要先创建一个与数据库表对应的模型。ThinkPHP5支持通过命令行快速生成模型文件,例如:

php think make:model User

该命令会在app/model目录下生成一个名为User的模型文件,模型文件中默认包含对应数据表名、主键及字段验证规则。

添加数据

在控制器中,可以通过实例化模型对象并调用save()方法来添加数据。例如,向users表插入一条记录:

$user = new User;
$user->name = 'John';
$user->age = 25;
$user->save();

上述代码创建了一个User模型对象,赋值后调用save()方法实现数据保存。

此外,可以结合validate()方法进行数据验证,保证数据有效性:

$user->validate(true)->save();

使用SQL语句添加数据

除了ORM方式,ThinkPHP5也支持通过原生SQL语句插入数据。可使用Db类的execute()方法执行SQL命令:

use think\Db;

Db::execute("INSERT INTO `users` (`name`,`age`) VALUES ('John', 25)");

该方式直接执行SQL语句,将数据插入到users表中。

防止SQL注入

在执行原生SQL时,防止SQL注入十分重要。推荐使用参数绑定的方式传递数据,避免安全风险:

$name = 'John';
$age = 25;

Db::execute("INSERT INTO `users` (`name`,`age`) VALUES (?, ?)", [$name, $age]);

参数绑定确保插入的数据不会被当成SQL代码解析,提升安全性。

总结

本文详细介绍了ThinkPHP5中添加数据的两种常用方法。使用ORM模型方式方便快捷,适合大部分应用场景;原生SQL方式灵活性更强,但需要注意防范SQL注入。根据实际需求选择合适方式,有助于高效完成数据写入操作。