thinkPHP5 0資料查詢表示式生成技巧

2022-09-08 11:57:15 字數 2595 閱讀 4656

thinkphp的查詢表示式大揭秘

主要使用where(條件表示式)方法

語法一:where('字段','條件','值');

等於:eq 解析為"="

不等於:neq 解析為"<>"

小於:lt 解析為"<"

小於等於: elt 解析為"<="

大於:gt 解析為">"

大於等於:egt 解析為">="

區間:between 解析為 「between * and *」

不在區間:notbetween 解析為 「notbetween * and *」

集合:in 解析為 in(*,*);

不在集合 : not in 解析為 not in(*,*)

字段值為null 和 not null  

//條件省略,預設為相等

$res=db::table('data')->where('id',11) //等價於:where('id','=',11)

->fetchsql(true) //輸出sql語句,

->select();

//完整的單值條件表示式

$res=db::table('data')->where('id','egt',11)  //等價於: where('id','>=',11)

->fetchsql(true)

->select();

//區間條件表示式

$res=db::table('data')->where('age','between',[18,35]) //between 18 and 35

->where('age','not between',[18,35]) //not between 18 and 35

->fetchsql(true)

->select();

//集合條件表示式

$res=db::table('data')->where('id','in',[2,3,4])  //in(2,3,4)

->where('id','not in',[2,3,5]) //not in(2,3,5)

->fetchsql(true)

->select();

//null值判斷,注意中間有「=」號的區別

$res=db::table('data')->where('node_name','null')  //找出該欄位預設設定為null的資料

->where('node_name','=','null')  //找出改欄位等於null字串的資料

->fetchsql(true) //列印sql

->select();

//like 或者 not like

$res=db::table('data')->where('name','like','%php')  //模糊匹配以php結尾的字段

->where('name','not like','%php')

->where('node_name','=','null') //node_name的值為null

->fetchsql(true)

->select();

每個陣列元素都是乙個查詢條件,使用where()方法時,每個條件之間為and關係,使用whereor()方法為or

//and

$res=db::table('data')->where([

'id'=>['>',11],

'typeid'=>['between',[13,20]]

])->fetchsql(true)

->select();

//sql :select * from `data` where `id` >11 and `typeid`  between 18 and 20;

//or

$res=db::table('data')->whereor([

'id'=>['egt',11],

'age'=>['between',[17,20]]

])->fetchsql(true)

->select();

//sql:select * from `data` where `id` >=11 or `age` between 17 and 20

//簡單條件

$res=db::table('data')->where('id','exp','>=10')

->select();

sql : select * from `data` where (`id`>=10)

//復合條件

$res=db::table('data')->where('age','exp','between 20 and 30')

->where();

sql: select * from `data` where (`age` between 20 and 30);

$res=db::table('data')->where('id','exp','>=10')

->where('age','>',30)

->whereor('dept','市場部')

->select();

select * from `data` where(`id`>=10) and `age`>30 or `dept`='市場部';

ThinkPHP5 0 接觸學習

mvc不是設計模式,而是設計典範。composer 是 php5.3以上 的乙個依賴管理工具。它允許你宣告專案所依賴的 庫,它會在你的專案中為你安裝他們。開發環境介紹 php版本 5.4.0 pdo mbstring curl php extension 安裝好這個擴充套件,thinkphp5能正常...

thinkphp5 0目錄結構

5.0的部署建議是public目錄作為web目錄訪問內容,其它都是web目錄之外,當然,你必須要修改public index.php中的相關路徑。如果沒法做到這點,請記得設定目錄的訪問許可權或者新增目錄列表的保護檔案。router.php用於php自帶webserver支援,可用於快速測試 啟動命令...

ThinkPHP5 0開發規範

thinkphp5 遵循 psr 2 命名規範和 psr 4 自動載入規範,並且注意如下規範 目錄和檔案 目錄使用小寫 下劃線 類庫 函式檔案統一以 php 為字尾 類的檔名均以命名空間定義,並且命名空間的路徑和類庫檔案所在路徑一致 類檔案採用駝峰法命名 首字母大寫 其它檔案採用小寫 下劃線命名 類...