亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 編程 > PHP > 正文

ThinkPHP CURD方法之where方法詳解

2020-03-22 20:28:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
ThinkPHP CURD操作的查詢方法中最常用但也是最復(fù)雜的就是where方法。where方法也屬于模型類(lèi)的連貫操作方法之一,主要用于查詢和操作條件的設(shè)置。where方法的用法是ThinkPHP查詢語(yǔ)言的精髓,也是ThinkPHP ORM(對(duì)象關(guān)系映射)的重要組成部分和亮點(diǎn)所在,可以完成包括普通查詢、表達(dá)式查詢、快捷查詢、區(qū)間查詢、組合查詢?cè)趦?nèi)的查詢操作。where方法的參數(shù)支持字符串和數(shù)組,雖然也可以使用對(duì)象但并不建議。1.字符串條件使用字符串條件直接查詢和操作,例如:$User = M("User"); // 實(shí)例化User對(duì)象$User- where('type=1 AND status=1')- select(); 最后生成的SQL語(yǔ)句是SELECT * FROM think_user WHERE type=1 AND status=1如果使用3.1以上版本的話,使用字符串條件的時(shí)候,建議配合預(yù)處理機(jī)制,確保更加安全,例如:$Model- where("id=%d and username='%s' and xx='%f'",array($id,$username,$xx))- select();或者使用:$Model- where("id=%d and username='%s' and xx='%f'",$id,$username,$xx)- select();如果$id變量來(lái)自用戶提交或者URL地址的話,如果傳入的是非數(shù)字類(lèi)型,則會(huì)強(qiáng)制格式化為數(shù)字格式后進(jìn)行查詢操作。
字符串預(yù)處理格式類(lèi)型支持指定數(shù)字、字符串等,具體可以參考vsprintf方法的參數(shù)說(shuō)明。2.數(shù)組條件數(shù)組條件的where用法是ThinkPHP推薦的用法。普通查詢最簡(jiǎn)單的數(shù)組查詢方式如下:$User = M("User"); // 實(shí)例化User對(duì)象$map['name'] = 'thinkphp';$map['status'] = 1; // 把查詢條件傳入查詢方法$User- where($map)- select(); 最后生成的SQL語(yǔ)句是SELECT * FROM think_user WHERE `name`='thinkphp' AND status=1表達(dá)式查詢上面的查詢條件僅僅是一個(gè)簡(jiǎn)單的相等判斷,可以使用查詢表達(dá)式支持更多的SQL查詢語(yǔ)法,查詢表達(dá)式的使用格式:$map['字段1'] = array('表達(dá)式','查詢條件1');$map['字段2'] = array('表達(dá)式','查詢條件2');$Model- where($map)- select(); // 也支持表達(dá)式不分大小寫(xiě),支持的查詢表達(dá)式有下面幾種,分別表示的含義是:

查詢條件就變成 name like 'thinkphp%'如果配置了DB_LIKE_FIELDS參數(shù)的話,某些字段也會(huì)自動(dòng)進(jìn)行模糊查詢。例如設(shè)置了:'DB_LIKE_FIELDS'= 'title|content'的話,使用$map['title'] = 'thinkphp';查詢條件就會(huì)變成 name like '%thinkphp%'
支持?jǐn)?shù)組方式,例如$map['a'] =array('like',array('%thinkphp%','%tp'),'OR');$map['b'] =array('notlike',array('%thinkphp%','%tp'),'AND');生成的查詢條件就是:(a like '%thinkphp%' OR a like '%tp') AND (b not like '%thinkphp%' AND b not like '%tp')[NOT] BETWEEN :同sql的[not] between, 查詢條件支持字符串或者數(shù)組,例如:$map['id'] = array('between','1,8');和下面的等效:$map['id'] = array('between',array('1','8'));查詢條件就變成 id BETWEEN 1 AND 8[NOT] IN: 同sql的[not] in ,查詢條件支持字符串或者數(shù)組,例如:$map['id'] = array('not in','1,5,8');和下面的等效:$map['id'] = array('not in',array('1','5','8'));查詢條件就變成 id NOT IN (1,5, 8)EXP:表達(dá)式,支持更復(fù)雜的查詢情況例如:$map['id'] = array('in','1,3,8');可以改成:$map['id'] = array('exp',' IN (1,3,8) ');exp查詢的條件不會(huì)被當(dāng)成字符串,所以后面的查詢條件可以使用任何SQL支持的語(yǔ)法,包括使用函數(shù)和字段名稱(chēng)。查詢表達(dá)式不僅可用于查詢條件,也可以用于數(shù)據(jù)更新,例如:$User = M("User"); // 實(shí)例化User對(duì)象 // 要修改的數(shù)據(jù)對(duì)象屬性賦值$data['name'] = 'ThinkPHP';$data['score'] = array('exp','score+1');// 用戶的積分加1$User- where('id=5')- save($data); // 根據(jù)條件保存修改的數(shù)據(jù)快捷查詢where方法支持快捷查詢方式,可以進(jìn)一步簡(jiǎn)化查詢條件的寫(xiě)法,例如:一、實(shí)現(xiàn)不同字段相同的查詢條件$User = M("User"); // 實(shí)例化User對(duì)象$map['name|title'] = 'thinkphp'; // 把查詢條件傳入查詢方法$User- where($map)- select(); 查詢條件就變成 name= 'thinkphp' OR title = 'thinkphp'二、實(shí)現(xiàn)不同字段不同的查詢條件$User = M("User"); // 實(shí)例化User對(duì)象$map['status&title'] =array('1','thinkphp','_multi'= true); // 把查詢條件傳入查詢方法$User- where($map)- select(); '_multi'= true必須加在數(shù)組的最后,表示當(dāng)前是多條件匹配,這樣查詢條件就變成 status= 1 AND title = 'thinkphp' ,查詢字段支持更多的,例如:$map['status&score&title'] =array('1',array('gt','0'),'thinkphp','_multi'= true);查詢條件就變成 status= 1 AND score 0 AND title = 'thinkphp'注意:快捷查詢方式中“|”和“&”不能同時(shí)使用。區(qū)間查詢where方法支持對(duì)某個(gè)字段的區(qū)間查詢,例如:$map['id'] = array(array('gt',1),array('lt',10)) ;得到的查詢條件是: (`id` 1) AND (`id` 10)$map['id'] = array(array('gt',3),array('lt',10), 'or') ;得到的查詢條件是: (`id` 3) OR (`id` 10)$map['id'] = array(array('neq',6),array('gt',3),'and'); 得到的查詢條件是:(`id` != 6) AND (`id` 3)最后一個(gè)可以是AND、 OR或者 XOR運(yùn)算符,如果不寫(xiě),默認(rèn)是AND運(yùn)算。
區(qū)間查詢的條件可以支持普通查詢的所有表達(dá)式,也就是說(shuō)類(lèi)似LIKE、GT和EXP這樣的表達(dá)式都可以支持。另外區(qū)間查詢還可以支持更多的條件,只要是針對(duì)一個(gè)字段的條件都可以寫(xiě)到一起,例如:$map['name'] = array(array('like','%a%'), array('like','%b%'), array('like','%c%'), 'ThinkPHP','or'); 最后的查詢條件是:(`name` LIKE '%a%') OR (`name` LIKE '%b%') OR (`name` LIKE '%c%') OR (`name` = 'ThinkPHP')組合查詢組合查詢用于復(fù)雜的查詢條件,如果你需要在查詢的時(shí)候同時(shí)偶爾使用字符串卻又不希望丟失數(shù)組方式的靈活的話,可以考慮使用組合查詢。組合查詢的主體還是采用數(shù)組方式查詢,只是加入了一些特殊的查詢支持,包括字符串模式查詢(_string)、復(fù)合查詢(_complex)、請(qǐng)求字符串查詢(_query),混合查詢中的特殊查詢每次查詢只能定義一個(gè),由于采用數(shù)組的索引方式,索引相同的特殊查詢會(huì)被覆蓋。一、字符串模式查詢(采用_string 作為查詢條件)數(shù)組條件還可以和字符串條件混合使用,例如:$User = M("User"); // 實(shí)例化User對(duì)象$map['id'] = array('neq',1);$map['name'] = 'ok';$map['_string'] = 'status=1 AND score $User- where($map)- select(); 最后得到的查詢條件就成了:( `id` != 1 ) AND ( `name` = 'ok' ) AND ( status=1 AND score 10 )二、請(qǐng)求字符串查詢方式請(qǐng)求字符串查詢是一種類(lèi)似于URL傳參的方式,可以支持簡(jiǎn)單的條件相等判斷。$map['id'] = array('gt','100');$map['_query'] = 'status=1&score=100&_logic=or';得到的查詢條件是:`id` 100 AND (`status` = '1' OR `score` = '100')三、復(fù)合查詢復(fù)合查詢相當(dāng)于封裝了一個(gè)新的查詢條件,然后并入原來(lái)的查詢條件之中,所以可以完成比較復(fù)雜的查詢條件組裝。
例如:$where['name'] = array('like', '%thinkphp%');$where['title'] = array('like','%thinkphp%');$where['_logic'] = 'or';$map['_complex'] = $where;$map['id'] = array('gt',1);查詢條件是( id 1) AND ( ( name like '%thinkphp%') OR ( title like '%thinkphp%') )復(fù)合查詢使用了_complex作為子查詢條件來(lái)定義,配合之前的查詢方式,可以非常靈活的制定更加復(fù)雜的查詢條件。
很多查詢方式可以相互轉(zhuǎn)換,例如上面的查詢條件可以改成:$where['id'] = array('gt',1);$where['_string'] = ' (name like "%thinkphp%") OR ( title like "%thinkphp") ';最后生成的SQL語(yǔ)句是一致的。3.多次調(diào)用自3.1.3版本開(kāi)始,where方法支持多次調(diào)用,但字符串條件只能出現(xiàn)一次,例如:$map['a'] = array('gt',1);$where['b'] = 1;$Model- where($map)- where($where)- where('status=1')- select();多次的數(shù)組條件表達(dá)式會(huì)最終合并,但字符串條件則只支持一次。PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
手机亚洲第一页| 2020国产精品久久精品美国| 国产98色在线|日韩| 国产成人3p视频免费观看| 国产一区二区视频在线观看免费| 欧美剧情电影在线观看完整版免费励志电影| 老司机久久99久久精品播放免费| 欧美激情一区二区三区高清视频| 免费精品一区| 99国产精品久久一区二区三区| 日韩av免费在线观看| 香蒸焦蕉伊在线| 国产免费播放一区二区| 丁香婷婷综合激情五月色| 来个黄色网址| 中文字幕av播放| 成人免费无码av| 国产精品理伦片| 成人啪啪18免费游戏链接| 亚洲天堂av在线播放| 视频一区二区在线| 色欲欲www成人网站| 欧美色xxxx| 视频一区在线观看| 国产精品国精产品一二| 成人黄色网免费| 免费观看成年在线视频网站| 亚洲国产高清在线观看| 超碰在线公开| 国产精品久久久久高潮| 国产美女精品视频| 男人天堂网视频| 国产另类ts人妖一区二区| 亚洲中文字幕无码爆乳av| 欧美精品黑人性xxxx| 免费成人高清| 中文字幕日韩国产| 丝袜理论片在线观看| 色视频www在线播放国产人成| 日韩高清国产一区在线| 日本一区二区久久精品| 亚洲男人第一网站| 成人在线视频一区二区三区| 亚洲一区综合| www.久久久精品| 欧美在线高清视频| 亚洲AV成人无码精电影在线| 经典三级一区二区| 中文字幕亚洲一区二区va在线| 亚洲国产精品嫩草影院久久| 91碰在线视频| 黄色录像特级片| 中文字幕日韩免费视频| 萌白酱国产一区二区| 日韩一区二区三区在线观看视频| 亚洲欧美日韩国产一区| 中文字幕免费高| 四虎成人精品永久免费av九九| 无人视频在线观看免费| 国产真实乱全部视频| 日韩av在线免费播放| 久久久久久毛片免费看| 欧美女优在线观看| 2018亚洲男人天堂| 日韩亚洲综合在线| 在线电影一区| 亚洲不卡视频| 苍井空张开腿实干12次| 国产在视频一区二区三区吞精| 少妇激情av一区二区| 美女写真理伦片在线看| 日本在线视频站| 国产精品手机在线| 久久久久久久久久久黄色| 国产精品第一页第二页第三页| 亚洲视频在线观看三级| 精品国产乱码久久久久久108| 亚洲另类欧美日韩| 日本一区二区高清不卡| 无码人妻精品一区二区三区温州| 免费看美女视频在线网站| 欧美+日本+国产+在线a∨观看| 国产成人精品123区免费视频| 亚洲中文字幕无码中文字| 午夜亚洲福利| 亚洲一区二区三区四区五区中文| 97人人模人人爽人人喊中文字| 成人免费视频97| www.黄色在线| www.玖玖玖| 亚洲最大在线视频| 欧美日韩一区二区三区在线视频| 欧美午夜激情影院| 麻豆高清免费国产一区| 欧美日韩在线成人| 久久亚洲a v| 亚洲图区综合| 免费视频爱爱太爽了| 5g国产欧美日韩视频| 黄色动漫免费看| 亚洲免费成人在线视频| 丝袜a∨在线一区二区三区不卡| 麻豆影院在线| 日本黄色播放器| 黑人巨大精品欧美一区二区三区| 菠萝菠萝蜜在线观看| 美女黄色免费看| 国产视频在线观看一区| 日韩欧美精品在线观看视频| 中文字幕av导航| 视频一区二区在线| 视频一区视频二区视频三区视频四区国产| 国产成人综合欧美精品久久| 国产成人综合精品三级| 国产麻豆乱码精品一区二区三区| 色妞一区二区三区| 91在线播放观看| 青青草97国产精品免费观看无弹窗版| 免费吸乳羞羞网站视频| 日日摸日日搞日日| 亚洲精彩视频| 精品人妻av一区二区三区| 欧美高清另类hdvideosexjaⅴ| 一级特黄特色的免费大片| 亚洲国产精品视频在线观看| 香蕉久久国产av一区二区| 成人精品免费视频| 刘亦菲一区二区三区免费看| 国产精品一级片在线观看| 日韩精品专区在线影院观看| 人妻精品久久久久中文| 欧美激情一区在线观看| 免费涩涩18网站入口| 凹凸日日摸日日碰夜夜| 日本免费中文字幕在线| 天堂在线中文网| 日韩精品久久久久久福利| 成人免费一区二区三区视频网站| 欧美手机在线视频| 99在线高清视频在线播放| 国内精彩免费自拍视频在线观看网址| 无码人妻一区二区三区精品视频| 香蕉视频xxxx| 欧美一区二区在线视频观看| 国产高清一区视频| 91久久精品一区二区三| 国产精品主播在线观看| 国产在线精品一区| 中文字幕一区二区三区有限公司| 99久久国产综合精品麻豆| 久久久亚洲综合| 在线视频中文字幕第一页| 久久久久网站| 国产亚洲人成网站在线观看| 激情小说亚洲色图| 成人h动漫精品一区二区无码| 免费在线视频你懂的| 精品少妇一区二区三区| av成人在线网站| 欧美久久99| 丁香五月缴情综合网| 15—17女人毛片| 日韩美女在线看免费观看| 中文字幕久热精品视频在线| 激情成人综合网| 欧美视频一区二区在线观看| 一边摸一边做爽的视频17国产| 丁香婷婷深情五月亚洲| 成人免费一区二区三区在线观看| 欧美xxxxx少妇| 欧美视频xxxx| 美女免费视频一区二区| 日韩 欧美 精品| 毛片毛片毛片毛| 午夜影院免费观看视频| 91视频欧美| 中文字幕精品久久久| 亚洲大片一区二区三区| 国产欧美日韩第一页| 日韩欧美成人免费视频| 欧美一卡二卡三卡| 6080亚洲精品一区二区| 欧美黑人乱大交| 久久在线视频在线| 亚洲精品在线91| 91深夜福利视频| 黄色精品免费看| 国产精品国产馆在线真实露脸| 日本中文字幕一区| 日本一区二区三区中文字幕| jizzwww| 日韩av网站免费在线| 天堂网www在线网| 92久久精品一区二区| 噜噜噜在线观看播放视频| 韩国一区二区在线播放| 丝袜美腿av在线| 欧美最大成人综合网| 欧美日韩亚洲一区在线观看| 人人做人人草| 国产午夜精品全部视频播放| av黄在线观看| **孕交吃奶水一级毛片| 红杏视频成人| 日本一级一片免费视频| 少妇性l交大片| 5566先锋影音夜色资源站在线观看| 国产精品一区二区三区四区| 美女流白浆视频| 在线观看精品视频一区二区三区| 99久久精品费精品国产风间由美| 亚洲一二三区精品| 黄色片在线观看免费| 丁香久久综合| 国产精品香蕉国产| 99riav久久精品riav| 国产精品69xx| 午夜激情视频在线播放| 久久国产一区二区三区| 亚洲九九在线| 欧美性视频在线播放| 日本韩国一区二区三区视频| 国产乱淫a∨片免费观看| 亚洲精品成人a在线观看| 美女扒开腿免费视频| 日韩欧美视频一区| 一区二区不卡免费视频| www成人免费观看网站| 翔田千里亚洲一二三区| 久久aⅴ国产欧美74aaa| 婷婷色一区二区三区| 国产专区综合网| 激情aⅴ欧美一区二区欲海潮| 欧美成人精品在线| 黄色美女一级片| 亚洲精品一区二区网址| 波多野结衣亚洲一区| youjizz.com在线观看| 在线中文字幕第一区| 日本vs亚洲vs韩国一区三区二区| 久久99精品久久久久久青青91| 成人片免费看| 天堂资源在线亚洲| 第四色婷婷基地| 亚洲av永久纯肉无码精品动漫| 少妇久久久久| 免费萌白酱国产一区二区三区| 91九色国产社区在线观看| 丁香花电影在线观看完整版| 色婷婷久久99综合精品jk白丝| 国产成人jvid在线播放| 国产伦精品一区| 成人激情黄色网| 99在线高清视频在线播放| 国产午夜精品福利视频| 无码国产精品久久一区免费| 日日夜夜一区| 人妻换人妻仑乱| 国产丝袜在线精品| 性色av一区二区怡红| 狠狠色狠狠色综合网| 色婷婷亚洲婷婷| 中文字幕无码人妻少妇免费| av网站网址在线观看| 色婷婷一区二区| 99国产视频在线| 高清欧美性猛交xxxx黑人猛交| 国产成人精品免费网站| 伊人av在线播放| 欧美精品黑人猛交高潮| 不许穿内裤随时挨c调教h苏绵| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲欧洲精品在线观看| 深夜福利视频在线免费观看| 91精品国产美女浴室洗澡无遮挡| 久久精品一区八戒影视| 日韩av男人的天堂| av片在线免费看| 日韩高清av在线| 日韩欧美一级在线| 国产精品丝袜一区二区| 欧美日韩亚洲一区在线观看| 免费wwwxxx| 韩国福利一区| 免费污片软件| 一道本在线观看视频| 久久久久成人片免费观看蜜芽| 黑人巨大精品欧美一区二区免费| 精品麻豆一区二区三区| 日韩av电影手机在线| 国产清纯美女被跳蛋高潮一区二区久久w| 最新中文字幕亚洲| 成人毛片一区二区| 欧产日产国产精品视频| 久久婷婷综合激情| 日韩人妻精品无码一区二区三区| 日韩精品一区二区三区第95| av毛片免费| 浮生影视网在线观看免费| 国产91精品欧美| 亚洲小少妇裸体bbw| 美女爽到高潮91| 99久热这里只有精品视频免费观看| 亚洲小说区图片区都市| 久久久久久麻豆| 男人通一通女人的下水道| 欧洲美女精品免费观看视频| 艳妇乳肉亭妇荡乳av| 亚洲成av在线| 久久人人97超碰人人澡爱香蕉| 日本一区免费观看| 波多野结衣与黑人| 人妻无码久久一区二区三区免费| 国产欧美精品区一区二区三区| 日韩av不卡电影| 中文字幕一区日韩精品| 大黄网站在线观看| 99中文视频在线| 麻豆传媒网站在线观看| 日本不卡一区| 亚洲欧美成人一区二区三区| 无码人妻丰满熟妇奶水区码| 免费在线观看成人| 亚洲精品**中文毛片| 日韩精品在线影院| 捆绑裸体绳奴bdsm亚洲| 日韩成人精品视频在线观看| 精品视频第一区|