一、URL和路由
1、我们访问tp5框架项目的url为:http://域名/index.php/模块/控制器/操作
其中index.php就称之为应用的入口文件
2、控制器定义
定义一个命名空间,下面举个例子大家就明白了。
index模块的Index控制器
<?php
namespace app\index\controller;
class Index
{
public function index()
{
return 'index';
}
}
如果通过url进行传值的话,我们就可以将变量和所要传的值放在后面
eg:http://域名/index.php/模块/控制器/操作/变量/所要传的值
3、定义路由
在路由定义文件(application/route.php)里面添加一些路由规则。
return [
// 添加路由规则 路由到 index控制器的hello操作方法
'hello/:name' => 'index/index/hello',
];
该路由规则表示所有hello开头的并且带参数的访问都会路由到index控制器的hello操作方法。
定义路由之前的访问地址:
http://tps.com/index/index/hellow/name/thinkphp
定义路由之后就只能访问下面的url地址
http://tps.com/hello/thinkphp
后面的name如果规则这样定义,我们没有传参数的话,就会报一个模块不存在的错误,所以我们可以将‘:name’使用[ ]包起来,说明这个变量是可选的,当我们再次访问的时候就不会出现这种错误。
当路由规则以 $ 结尾的时候就表示当前路由规则需要完整匹配。
除了路由配置文件中定义之外,我们还可以采用动态定义路由规则的方式定义,我们可以在配置文件(application/route.php)的开头直接添加下面的内容。
use think\Route;
Route::rule('hello/:name', 'index/hello');
这样完成的效果和使用配置方式定义是一样的。
二、数据库配置
1、数据库配置连接
数据库的配置信息在我们的数据库配置文件中进行配置就可以了(application/database.php),如果我们想要进行长连接的话就而已配置params,它是数据库连接参数。
长连接:
'params' => [
// 使用长连接
\PDO::ATTR_PERSISTENT => true,
],
我们在使用数据库的时候一定要调用Db类,
2、原生查询
进行原生的sql查询,我们可以使用query和execute两个方法,分别用于查询操作和写操作。4
创建(create)【插入一条数据】
// 插入记录
$result = Db::execute('insert into think_data (id, name ,status) values (5, "thinkphp",1)');
dump($result);
更新(update)
// 更新记录
$result = Db::execute('update think_data set name = "framework" where id = 5 ');
dump($result);
读取(read)
// 查询数据
$result = Db::query('select * from think_data where id = 5');
dump($result);
query方法返回的结果是一个数据集(数组),如果没有查询到数据则返回空数组。
删除(delete)
// 删除数据
$result = Db::execute('delete from think_data where id = 5 ');
dump($result);
原则上,读操作都进行query方法,写操作使用execute方法。
三、接值
下面和大家说一下在tp5中的接值
先要调用request类
use think\Request;
然后再进行接值,使用get或post
Request::instance()->post('u_name');
Request::instance()->get('u_name');