从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解(5)
【get传参】
tp5废除了url/参数名1/参数值1/参数名2/参数值2......这样的方式传参,还是老老实实用url?参数名1=参数值1&参数名2=参数值2......这样传吧。
控制器里打印$_GET
:
<?php namespace app\index\controller; use think\Controller; class Index extends Controller { public function index() { $getdate = $_GET; dump($getdate); } }
这样是不对滴:
这样就好使:
【安全获取变量】
tp3.2可以使用I方法安全获取get、post等系统输入变量
tp5中使用助手函数 input()
//获取get变量 $data1 = input('get.name'); //获取post变量 $data2 = input('post.name'); //获取当前请求变量 $data3 = input('param.name'); //获取request变量 $data4 = input('request.name'); //获取cookie变量 $data5 = input('cookie.name'); //获取session变量 $data6 = input('session.name'); //获取上传文件信息 $data7 = input('file.image');
(注意:获取的数据为数组,要加上 /a 修饰符才能获取到)
$arr = input('post.arr/a');
可以在配置文件中设置全局过滤方法:
// 默认全局过滤方法 用逗号分隔多个 'default_filter' => 'htmlspecialchars',
【数据库操作】
tp5的数据库配置文件在根目录 /application/database.php:(也可在模块下单独配置)
连接数据库:tp3.2支持M方法连接数据库,tp5使用 Db类 或 助手函数db()
查询数据:依旧使用 find()
、select()
方法,查询一个字段使用 value()
方法代替getField()
//查询一条 $artinfo = db('article')->find(); //查询全部 $artinfo = db('article')->select(); //查询一个字段 $artinfo = db('article')->value('article_title');
添加数据:tp3.2使用add()
,tp5使用 insert()
:返回插入条数 或 save()
:返回id
//添加一条数据 $data['article_title'] = 'PHP是世界上最好的语言'; $data['article_content'] = '如题'; db('article')->insert($data); //或 db('article')->save($data);
内容版权声明:除非注明,否则皆为本站原创文章。