5.0
助手函数和3.2
版本的单字母函数对比如下:
3.2 版本 | 5.0 版本 |
---|---|
C | config |
E | exception |
G | debug |
L | lang |
T | 废除 |
I | input |
N | 废除 |
D | model |
M | db |
A | controller |
R | action action(index/user)调用index控制器下的user方法 action('index')调用本控制器下的方法 |
B | 废除 |
U | url |
W | widget |
S | cache |
F | 废除 |
数据库
5.0的数据库查询功能增强,原先需要通过模型才能使用的链式查询可以直接通过Db类调用,原来的M函数调用可以改用db函数,例如:
3.2版本
M('User')->where(['name'=>'thinkphp'])->find();
5.0版本
db('User')->where('name','thinkphp')->find();
模板
5.0在控制器中输出模板,使用方法如下:
如果你继承think\Controller
的话,可以使用:
return $this->fetch('index/hello');
如果fetch()和display() 的参数设置一样 只不过多了一个return
如果你的控制器没有继承 think\Controller
的话,使用:
return view('index/hello');
版本对比
3.2版本控制器写法
<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller
{
public function hello()
{
echo 'hello,thinkphp!';
}
}
5.0版本控制器写法
namespace app\index\controller;
use Think\Controller;
class Index extends controller
{
public function index()
{
return 'hello,thinkphp!';
}
}
3.2版本控制器命名
IndexController.class.php
5.0版本控制器命名
Index.php
不加Controller.class
文件名首字母必须大写 并且要采用驼峰命名
控制器名字和文件名字必须要对应
命名空间必须和文件目录对应
文件名和控制器是UserDate url访问应该是user_data