YII2 查询语句和请求 持续更新笔记

本文详细解析了Yii2框架中find与findOne方法的区别,包括如何使用这些方法进行数据检索、条件筛选、分页、统计及数据验证等操作。同时,介绍了请求参数的获取方式及请求方法的判断。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

find和findOne区别
findONe对ID 返回该ID的数据
可以$model->id=xx;id是模型表里面存在的字段

find()方法
->select()查找需要返回的字段
->where(‘in’,‘id’,$id)条件,有in,not in, and,not and,between,not between,or 等等
->andwhere()添加多一个条件
->filterWhere()过滤
->andFilterWhere()添加多一个过滤
注意 andwhere和andFiterWhere区别 后者会把空值忽略掉
->limit()分页 limit和offset如果只有一个limit或offset,那么这个会被忽略掉
->offset()分页
->exists()是否存在
->count()统计
->indexBy()索引
->asArray() 也是以数组形式返回的意思 但是有没它区别好大
没有asArray会加载很多
用了asArray
用了asArray
->all() 是返回数组
->one 返回结果集第一行

yii2 模型
当你调用 save() 时,默认情况下会自动调用 validate()。 只有当验证通过时,它才会真正地保存数据; 否则将简单地返回 false, 您可以检查 errors 属性来获取验证过程的错误消息–可以print_r($model->errors)打印出问题。
sava()操作如果对数据验证场景安全信任,可以选择runValidation:false 表示不验证 可以跳过验证。
save()有两个参数 第一参数表示是否开启验证,第二表示验证的字段

yii2 请求
要获取请求参数,你可以调用 request 组件的 get() 方法和 post() 方法。 他们分别返回 $_GET 和 $_POST 的值。例如:

request=Yii::request = Yii::request=Yii::$app->request;
get=get=get=request->get();
等于 get=$_GET;
get=get=get=request->get(‘id’);
等于 get=isset(get=isset(get=isset(_GET[‘id’])?$_Get([‘id’]:null);
上面区别是有无参数
关于empty和isset区别
empty检测值是否空 0 null 如果是返回true,而isset检查变量和值是否空还有是否定义变量,如果定义了变量而且值不是null,返回true。 empty 和!isset()等价。
对于web 传入参数 一般用 !empty判断值是否空值,不是空值返回true,如果对于0,用isset比较好
当要 判断一个变量是否已经声明的时候 可以使用 isset 函数
当要 判断一个变量是否已经赋予数据且不为空 可以用 empty 函数

post=post=post=request->post(‘id’,1);
post=isset(post=isset(post=isset(_POST[‘id’])?$_POST[‘ID’]:1;

请求方法
if ($request->isAjax) 该请求是一个 AJAX 请求

if ($request->isGet) 请求方法是 GET

if ($request->isPost) 请求方法是 POST

if ($request->isPut) 请求方法是 PUT

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值