当前位置: 首页 > news >正文

海洋网络专业网站建设上海 餐饮网站建设

海洋网络专业网站建设,上海 餐饮网站建设,网站概述怎么写,重庆爱德华医院正规吗在Laravel中#xff0c;可以使用where方法来添加查询条件#xff0c;但是每次添加where条件时#xff0c;都会在查询构造器中持久化这些条件#xff0c;直到你手动重置它们。所以#xff0c;如果你想在下一次查询中清除上次查询的where条件#xff0c;有以下几种选择可以使用where方法来添加查询条件但是每次添加where条件时都会在查询构造器中持久化这些条件直到你手动重置它们。所以如果你想在下一次查询中清除上次查询的where条件有以下几种选择 1. 使用getQuery方法 可以使用getQuery方法获取查询构造器的实例并使用wheres属性来获取所有where条件然后使用reset方法重置条件。 $query Model::where(column1, value1)-orWhere(column2, value2); // 获取查询构造器实例 $builder $query-getQuery(); // 清除所有 where 条件 $builder-wheres [];2. 创建新的查询构造器实例 $query Model::query(); // 创建新的查询构造器实例 $query $query-where(column1, value1)-orWhere(column2, value2); // 下一次查询时创建新的查询构造器实例 $query Model::query(); 3. 使用闭包 $query Model::query(); $query $query-where(function ($query) {$query-where(column1, value1)-orWhere(column2, value2); }); // 下一次查询时不添加任何条件 $query Model::query(); 4.如果你想清空某个字段的查询条件可以使用getQuery方法获取查询构造器的实例并使用wheres属性来获取所有的where条件然后遍历条件数组找到需要清空的条件并删除。 以下是一个示例代码片段演示如何清空某个字段的查询条件 $query Model::where(column1, value1)-where(column2, value2)-where(column3, value3); // 获取查询构造器实例 $builder $query-getQuery(); // 获取所有 where 条件 $wheres $builder-wheres;// 遍历条件数组 foreach ($wheres as $key $where) {// 检查条件是否为字段 column2if (isset($where[column]) $where[column] column2) {// 删除条件unset($wheres[$key]);} }// 重新设置查询构造器的 wheres 属性 $builder-wheres $wheres;// 执行查询 $results $query-get(); 在上面的示例中我们首先获取查询构造器实例然后获取所有的where条件并遍历条件数组。如果条件的字段等于 column2我们就删除该条件。最后我们重新设置查询构造器的 wheres 属性并执行查询。 请根据你的具体需求修改示例代码以适应你的查询条件和模型。 public function likeVisit(Request $request){$userId $request-user()-id;$params $request-all();$page $params[page] ?? self::PAGE;$limit $params[limit] ?? self::LIMIT;$type $params[type] ?? 1; //1 我喜欢的 2喜欢我的 3最近来访 4互相喜欢$zSetCache new ZsetCache();$stringCache new SysConfigStringCache();$cacheKey Visit: . $type . _ . $page . _ . $limit . _ . $userId;$stringCache-setKeyParameter([$cacheKey]);$cacheData $stringCache-get();if ($cacheData) {return $this-success(json_decode($cacheData, 320));} else {$info [my_like_user [],like_me_user [],visit_user [],each_like_list [],];$myLikeUserIds UserLike::myLikeUserIds($userId);$likeMeUserIds UserLike::likeMeUserIds($userId);$eachLikeIds array_intersect($myLikeUserIds, $likeMeUserIds);//我已经解锁的用户[喜欢我的 最近来访]$myUnLockId [];if ($type 2 || $type 3) {$myUnLockId UserUnlock::getLockStatus([user_id $userId]);}$select [nickname, birthday, avatar, stature, location_city_id, user_id, like_user_id, ip];$query User::query()-select($select);if ($type 1) { //1.我喜欢的$myLike $query-leftJoin(meet_user_like, meet_user.id, , meet_user_like.like_user_id)-where([user_id $userId, meet_user_like.type 1])-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-orderBy(meet_user_like.id, desc)-offset($page * $limit)-limit($limit)-get();$myLike !empty($myLike) ? $myLike-toArray() : [];foreach ($myLike as $item) {$item[each_like] in_array($item[like_user_id], $likeMeUserIds);}$info[my_like_user] (new UserLike())-formatUser($myLike);} elseif ($type 2) { //2.喜欢我的$query $query-leftJoin(meet_user_like, meet_user.id, , meet_user_like.user_id)-orWhere(function ($query) use ($userId) {$query-where(meet_user.identity_status, 1)-where(meet_user.score, , 70)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-where([like_user_id $userId, meet_user_like.type 1]);})-orWhere(function ($query) use ($userId) {$query-where(meet_user.status, 1)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-where([like_user_id $userId, meet_user_like.type 1]);})-orWhere(function ($query) use ($userId) {$query-where(meet_user.vip_status, 1)-where([like_user_id $userId, meet_user_like.type 1])-where(meet_user.status, , User::USER_STATUS_LOG_OFF);});//年龄范围if (isset($params[age_min]) !empty($params[age_min]) isset($params[age_max]) !empty($params[age_max])) {$ageMin now()-subYears($params[age_max])-toDateString();$ageMax now()-subYears($params[age_min])-toDateString();$query-where(birthday, , $ageMin);$query-where(birthday, , $ageMax);}//城市if (isset($params[location_city_id]) !empty($params[location_city_id])) {$query-where(location_city_id, $params[location_city_id]);}//身高if (isset($params[stature_min]) !empty($params[stature_min]) isset($params[stature_max]) !empty($params[stature_max])) {$query-where(stature, , $params[stature_min]);$query-where(stature, , $params[stature_max]);}//学历if (isset($params[education_level]) !empty($params[education_level])) {$query-where(education_level, , $params[education_level]);}$likeMe $query-orderBy(meet_user_like.id, desc)-offset($page * $limit)-limit($limit)-get();$likeMe !empty($likeMe) ? $likeMe-toArray() : [];foreach ($likeMe as $item) {$item[each_like] in_array($item[user_id], $myLikeUserIds);$item[lock_status] isset($myUnLockId[$item[user_id]]);}$info[like_me_user] (new UserLike())-formatUser($likeMe);//销毁动态新增喜欢(红色标记样式)$newLikeMeKey Like:new_like_me_ . $userId;$stringCache-del($newLikeMeKey);} elseif ($type 3) {//3最近来访//销毁动态新增来访$newVisitMeKey Visit:new_visit_me_ . $userId;$stringCache-del($newVisitMeKey);//阅后即焚将该成员销毁掉避免影响新的值比对$visitNumKey Visit:new_visit_num;$zSetCache-zRem($visitNumKey, $newVisitMeKey);//3.最近来访$tomorrow Carbon::tomorrow()-toDateString();$today Carbon::today()-toDateString();$yesterday Carbon::yesterday()-toDateString();$select [nickname, birthday, avatar, stature, location_city_id, user_id, visit_num, meet_user_visit.created_at as visit_time, ip];//$todayVisitKey Visit: . total_visit_ids_ . $userId;//$todayVisitIds $zSetCache-zRangeByScore($todayVisitKey, strtotime(date(Y-m-d)), time()); //今日访客ids//$yesterdayVisitIds $zSetCache-zRangeByScore($todayVisitKey, strtotime(date(Y-m-d, strtotime(-1 day))), strtotime(date(Y-m-d))); //昨日访客ids//$historyVisitIds $zSetCache-zRangeByScore($todayVisitKey, -inf, strtotime(date(Y-m-d, strtotime(-1 day)))); //历史访客ids$recentVisitData [todayVisit [],yesterdayVisit [],historyVisit [],];/*$recentVisit User::query()-select($select)-leftJoin(meet_user_visit, meet_user.id, , meet_user_visit.user_id)-where(visited_id, $userId)-where(avatar, !, ) // 过滤掉空头像用户-orWhere(function ($query) use ($userId) {$query-where(meet_user.identity_status, 1)-where(meet_user.score, , 70)-where(visited_id, $userId)-where(avatar, !, ); // 附加条件})-orWhere(function ($query) use ($userId) {$query-where(meet_user.status, 1)-where(visited_id, $userId)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-where(avatar, !, ); // 附加条件})-orWhere(function ($query) use ($userId) {$query-where(meet_user.vip_status, 1)-where(visited_id, $userId)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-where(avatar, !, ); // 附加条件})-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-orderBy(meet_user_visit.id, desc)-offset($page * $limit)-limit($limit)-get();*/$recentVisitQuery User::query()-select($select)-leftJoin(meet_user_visit, meet_user.id, , meet_user_visit.user_id)-where([visited_id $userId])-where(avatar, !, ) //过滤掉空头像用户-where(meet_user.status, , User::USER_STATUS_LOG_OFF) //没有注销的用户-orWhere(function ($query) use ($userId) {$query-where(meet_user.identity_status, 1)-where(meet_user.score, , 70)-where(visited_id, $userId)-where(avatar, !, ); // 附加条件})-orWhere(function ($query) use ($userId) {$query-where(meet_user.status, 1)-where(visited_id, $userId)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-where(avatar, !, ); // 附加条件})-orWhere(function ($query) use ($userId) {$query-where(meet_user.vip_status, 1)-where(visited_id, $userId)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-where(avatar, !, ); // 附加条件})-orderByDesc(meet_user_visit.created_at);foreach ($recentVisitData as $key $datum) {if ($key todayVisit) {//今天访客$todayVisit $recentVisitQuery-where(meet_user_visit.created_at, , $today)-where(meet_user_visit.created_at, , $tomorrow)-get()-groupBy(user_id);$todayVisit $todayVisit-isNotEmpty() ? $todayVisit-toArray() : [];$newTodayVisit [];foreach ($todayVisit as $todayItem) {$visitUser (array)$todayItem[0];$visitUser[each_like] in_array($visitUser[user_id], $eachLikeIds);$visitUser[lock_status] isset($myUnLockId[$visitUser[user_id]]);$newTodayVisit[] $visitUser;}$recentVisitData[todayVisit] (new UserLike())-formatUser($newTodayVisit);//dd($recentVisitData[todayVisit]);} elseif ($key yesterdayVisit) {//昨天//1. 获取查询构造器实例$builder $recentVisitQuery-getQuery();//2. 获取所有 where 条件$wheres $builder-wheres;$bindings $builder-bindings;//3. 遍历条件数组foreach ($wheres as $key $where) {// 检查条件是否为字段 column2if (isset($where[column]) $where[column] meet_user_visit.created_at) {//unset($wheres[$key]); // 删除条件if ($wheres[$key][operator] ) {$wheres[$key][value] $yesterday;$bindings[where][$key] $yesterday;} elseif ($wheres[$key][operator] ) {$wheres[$key][value] $today;$bindings[where][$key] $today;}}}//4. 重新设置查询构造器的 wheres 属性$builder-wheres $wheres;$builder-bindings $bindings;// 清除所有 where 条件// $builder-wheres [];//5. 执行查询$yesterdayVisit $builder-get()-groupBy(user_id);//$builder $recentVisitQuery-getQuery();//dd($builder,$builder-bindings);//$yesterdayVisit $builder-where(meet_user_visit.created_at, , $yesterday)-where(meet_user_visit.created_at, , $today)-get()-groupBy(user_id);$yesterdayVisit $yesterdayVisit-isNotEmpty() ? $yesterdayVisit-toArray() : [];$newYesterdayVisit [];foreach ($yesterdayVisit as $item) {$visitUser (array)$item[0];$visitUser[each_like] in_array($visitUser[user_id], $eachLikeIds);$visitUser[lock_status] isset($myUnLockId[$visitUser[user_id]]);$newYesterdayVisit[] $visitUser;}$recentVisitData[yesterdayVisit] (new UserLike())-formatUser($newYesterdayVisit);//dd( $recentVisitData[yesterdayVisit]);} else {//历史来访//1. 获取查询构造器实例$builder $recentVisitQuery-getQuery();//2. 获取所有 where 条件$wheres $builder-wheres;$bindings $builder-bindings;//3. 遍历条件数组foreach ($wheres as $key $where) {if (isset($where[column]) $where[column] meet_user_visit.created_at) {if ($wheres[$key][operator] ) {unset($wheres[$key], $bindings[where][$key]); // 删除条件} else {$wheres[$key][value] $yesterday;$bindings[where][$key] $yesterday;}}}//4. 重新设置查询构造器的 wheres 属性$builder-wheres $wheres;$builder-bindings $bindings;//5. 执行查询$historyVisit $builder-get()-groupBy(user_id);// $historyVisit $recentVisitQuery-withoutGlobalScope(meet_user_visit.created_at)-where(meet_user_visit.created_at, , $yesterday)-offset($page * $limit)-limit($limit)-get()-groupBy(user_id);$historyVisit $historyVisit-isNotEmpty() ? $historyVisit-toArray() : [];$newHistoryVisit [];foreach ($historyVisit as $item) {$visitUser (array)$item[0];$visitUser[each_like] in_array($visitUser[user_id], $eachLikeIds);$visitUser[lock_status] isset($myUnLockId[$visitUser[user_id]]);$newHistoryVisit[] $visitUser;}$recentVisitData[historyVisit] (new UserLike())-formatUser($newHistoryVisit);//dd( $recentVisitData[historyVisit]);}}//dd($recentVisitData);/*if ($recentVisit-isNotEmpty()) {$recentVisit $recentVisit-toArray();$recentVisit (new UserLike())-formatUser($recentVisit);// dd($recentVisit);$visitData $yesterdayVisitData $historyVisitData [];foreach ($recentVisit as $visit) {$visit[each_like] in_array($visit[user_id], $eachLikeIds);$visit[lock_status] isset($myUnLockId[$visit[user_id]]);if ($tomorrow $visit[visit_time] $visit[visit_time] $today) {//今天访客if (!isset($visitData[$visit[user_id]])) {$visitData[$visit[user_id]] $visit;$recentVisitData[todayVisit][] $visit;}} elseif ($today $visit[visit_time] $visit[visit_time] $yesterday) { //昨天if (!isset($yesterdayVisitData[$visit[user_id]])) {$yesterdayVisitData[$visit[user_id]] $visit;$recentVisitData[yesterdayVisit][] $visit;}} elseif ($yesterday $visit[visit_time]) {if (!isset($historyVisitData[$visit[user_id]])) {$historyVisitData[$visit[user_id]] $visit;$recentVisitData[historyVisit][] $visit;}}}unset($visitData, $yesterdayVisitData, $historyVisitData);}*/$info[visit_user] $recentVisitData;unset($recentVisitData);} elseif ($type 4) { //4互相喜欢//$eachLikeIds array_intersect($myLikeUserIds, $likeMeUserIds);$select [id as like_user_id, nickname, birthday, avatar, stature, location_city_id, ip];$eachLikeList User::query()-select($select)-where(meet_user.status, , User::USER_STATUS_LOG_OFF)-whereIn(meet_user.id, $eachLikeIds)-offset($page * $limit)-limit($limit)-get();$eachLikeList !empty($eachLikeList) ? $eachLikeList-toArray() : [];foreach ($eachLikeList as $item) {$item[user_id] $userId;$item[each_like] true;}$info[each_like_list] (new UserLike())-formatUser(array_values($eachLikeList));$info[each_like_count] count($eachLikeIds);}//缓存1小时//$stringCache-set(json_encode($info, 320));//$stringCache-expire(3600);return $this-success($info);}}
http://www.hkea.cn/news/14322748/

相关文章:

  • 海南建设培训与执业中心网站南昌企业建设网站设计
  • 苏州建设工程有限公司包括搜索引擎排名、网页标签优化、相关链接交换、网络广告投放等
  • 卖米网站源码怎么开发创建网站教程
  • 网站开发是否用html5.net网站开发程序员
  • 做网站属于什么行业seo研究中心vip课程
  • 平面设计师如何做网站江西省住房建设厅网站
  • 泉州市华泰建设工程有限公司网站国家建设部网站官网
  • 环保科技东莞网站建设互动科技 网站
  • 外网建筑设计网站南通城乡建设局网站首页
  • 怎么做外汇返佣的网站网站建设数据技术
  • 备案要关闭网站吗免费网页建设
  • 免费建设钓鱼网站平台wordpress 手机判断
  • 某网站项目策划书自己制作logo免费生成器
  • php原生态开发公司网站北京网首页
  • 北京住房与城乡建设部网站wordpress 搜索框样式
  • 浙江设计公司北京seo专员
  • 网站布局优化怎么做公司旅游视频网站模板
  • 天河做网站系统如何做网络免费推广方案
  • 自己做的网站怎么添加采集模块电子商务网站名称和网址
  • 网站建设人力资源分配教学网站开发视频
  • 做数学网站漳州微信网站建设
  • 外国有没有中国代做数学作业的网站平面设计制作
  • seo技术优化整站wordpress获取文章作者
  • 零基础学pytho 网站开发哪个网站注册域名
  • 好的免费网站建站平台项目建设管理 公司 网站
  • 软件开发的步骤流程好的seo公司营销网
  • 织梦网站模板安装信息行业网站建设
  • 新网站做seo深圳石岩做网站的公司
  • 西安东郊网站建设厦门企业网站seo
  • 没网站做cpa星沙做淘宝店铺网站