在 php 中使用 ORM (Object-Relational Mapping) 的方式主要有 2 种:一个是使用现成的 ORM 工具,例如 Laravel 的 Eloquent ORM、Doctrine 等;另一个是手写 ORM。
以下是使用 Laravel 的 Eloquent ORM 的例子:
-
安装 Laravel 框架,可以使用 Composer 安装。
-
创建数据表和模型:
a. 创建数据库和数据表;
b. 创建模型,可以通过命令行工具 Artisan 来生成模型:
php artisan make:model User
-
在模型中定义表名和字段信息,例如:
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class User extends Model
{
protected $table = "users";
protected $fillable = ["name", "email", "password"];
}
-
在控制器中使用模型来操作数据,例如:
<?php
namespace AppHttpControllers;
use AppUser;
use IlluminateHttpRequest;
class UserController extends Controller
{
public function index()
{
$users = User::all();
return view("users.index", compact("users"));
}
public function create()
{
return view("users.create");
}
public function store(Request $request)
{
$user = new User();
$user->name = $request->input("name");
$user->email = $request->input("email");
$user->password = $request->input("password");
$user->save();
return redirect("/users");
}
public function edit($id)
{
$user = User::find($id);
return view("users.edit", compact("user"));
}
public function update(Request $request, $id)
{
$user = User::find($id);
$user->name = $request->input("name");
$user->email = $request->input("email");
$user->password = $request->input("password");
$user->save();
return redirect("/users");
}
public function destroy($id)
{
$user = User::find($id);
$user->delete();
return redirect("/users");
}
}
以上是一个简单的使用 Eloquent ORM 的例子。在实际项目中,应根据需要调整模型、控制器等的具体实现。