ThinkPHP 是一个快速、简单的面向对象的轻量级 PHP 开发框架。下面是一些基本的 ThinkPHP 代码示例,帮助您快速了解其基本用法。

1. 创建一个控制器

在 ThinkPHP 中,控制器负责处理用户的请求并返回响应。假设我们创建一个名为 Index 的控制器:

// 应用目录下的controller/IndexController.php
namespace app\controller;

use think\Controller;

class IndexController extends Controller
{
    public function index()
    {
        return 'Hello, this is ThinkPHP!';
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
2. 定义路由

为了让用户能够访问到上面创建的控制器方法,我们需要在路由文件中定义一条路由规则。ThinkPHP 5.1 版本及以后使用路由的方式如下:

// config/route.php 或者在 app/route.php 中定义路由
use think\facade\Route;

Route::get('/', 'index/index');
  • 1.
  • 2.
  • 3.
  • 4.
3. 创建视图

ThinkPHP 支持多种模板引擎,这里以默认的 Think 模板为例,创建一个简单的视图文件:

<!-- application/view/index/index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ThinkPHP Example</title>
</head>
<body>
    <h1>Welcome to ThinkPHP</h1>
    <p>This is a basic example page.</p>
</body>
</html>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

在控制器中返回视图:

// IndexController.php
public function showView()
{
    return view('index/index');
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
4. 数据库操作示例

ThinkPHP 提供了简单的数据库操作方法。首先,在配置文件中设置好数据库连接信息,然后创建一个模型:

// 通过命令行创建模型(ThinkPHP 6.x)
php think make:model Index -a
  • 1.
  • 2.

这会生成一个位于 application/model/Index.php 的模型文件,你可以在这个模型中定义与数据库表对应的方法。例如,插入数据:

// application/model/Index.php
namespace app\model;

use think\Model;

class Index extends Model
{
    // 假设有一个名为 `example` 的表
    public function insertData($data)
    {
        $result = $this->save($data);
        return $result !== false; // 返回插入是否成功
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

在控制器中调用此模型插入数据:

public function saveData()
{
    $data = [
        'name' => 'Test',
        'description' => 'This is a test record.'
    ];
    $indexModel = new \app\model\Index();
    if ($indexModel->insertData($data)) {
        return 'Data saved successfully.';
    } else {
        return 'Failed to save data.';
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

以上就是 ThinkPHP 中一些基本操作的示例,实际开发中还需要考虑如数据验证、错误处理、安全性等更多细节。务必参考 ThinkPHP 官方文档以获取更全面的信息。