从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);
      

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/5796.html