我姓!,名!!
- 我姓!,名!! 2020-01-22 已签到连续签到2天,获得了10个金钱
- 我姓!,名!! 2020-01-21 已签到连续签到1天,获得了5个金钱
- 我姓!,名!! 2020-01-16 已签到连续签到4天,获得了20个金钱
- 我姓!,名!! 2020-01-15 已签到连续签到3天,获得了15个金钱
- 我姓!,名!! 2020-01-14 已签到连续签到2天,获得了10个金钱
- 我姓!,名!! 2020-01-13 已签到连续签到1天,获得了5个金钱
- 我姓!,名!! 2020-01-10 已签到连续签到5天,获得了20个金钱
- 我姓!,名!! 2020-01-09 已签到连续签到4天,获得了20个金钱
- 我姓!,名!! 2020-01-08 已签到连续签到3天,获得了15个金钱
- 我姓!,名!! 赞了回答
这个匿名函数 不需要返回值,直接操作
$query
就是了(因为这是 存在性检查,所以肯定有数据库查询)filter => ["field1" => "value1"]
如上代码 等效于
filter => function($query) { $query->andWhere(["field1" => "value1"]); }
所以,对于 and 的查询条件,是不需要用这个 匿名函数的,直接把 过滤条件数组 赋值给 filter 就可以了。当 你想要一个 or 查询的时候,就只能用这个 匿名函数了
filter => function($query) { $query->orWhere(["field1" => "value1"]); }
举一个 有点牵强的 示例场景:
注册的时候,需要填入一个 推荐人用户名,要求 这个推荐人用户名 必须存在,这时 是用不到 filter 属性的。假如用户表是做的 软删除,要求这个推荐人用户名 不能是 已删除的用户,这时 就需要用到 filter 属性了,不过,没必要用匿名函数,直接 给 filter 赋值 就可以了
filter => ["<>", "isDeleted", 1]
。在假如,除了填写 推荐人用户名 还可以填写 推荐人的邮箱(用同一个输入框),这时候就只能用 匿名函数了,考虑一下,这个 该怎么写呢