溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ThinkPHP中數(shù)據(jù)庫操作返回值的方法

發(fā)布時間:2021-07-05 15:03:12 來源:億速云 閱讀:737 作者:chen 欄目:大數(shù)據(jù)

本篇內容介紹了“ThinkPHP中數(shù)據(jù)庫操作返回值的方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

關鍵字:   Thinkphp,返回值,數(shù)據(jù)庫操作,select返回值,add返回值,setDec返回值

Thinkphp中的Think\Model類提供了數(shù)據(jù)庫的基本CURD(Create、Update、Read及Delete),通過該類可以很便捷的進行操作。
Model類及擴展類主要的方法有:

  1. Create操作:
    create()(非鏈式) 、add()、addAll()
    支持的鏈式操作有:
    table 、data、field 、relation 、validate、auto 、filter、scope 、bind 、token 、comment

  2. Update操作
    save()、setField()、setInc()、setDec()
    支持的鏈式操作有:
    where、table 、alias、field、order、lock 、relation 、scope 、bind 、comment

  3. Read操作
    find()、select()、getField()、Count 、Max、Min 、Avg 、Sum
    支持的鏈式操作有:
    where 、table 、alias 、field 、order、group 、having 、join 、union 、distinct、lock、cache 、relation 、result 、scope 、bind 、comment

  4. Delete操作
    delete()
    支持的鏈式操作有:
    where 、table 、alias 、order、lock 、relation 、scope 、bind 、comment

這些方法的可能的返回值有false/true/一位數(shù)組/二維數(shù)組/numeric(數(shù)字)/null/類本身的實例,現(xiàn)在就總結如下:

1、鏈式操作:

所以鏈式操作都返回Model類的實例,即可以使用該返回值繼續(xù)調用實例方法。

 
  1. $User=M("User");

  2. $U1=$User->$where("id = 1");//$U1可以繼續(xù)調用其他方法。

  3. $result=$U1->select();

  4. //-------一般情況下沒有必要這樣,下面一句代碼即可實現(xiàn)

  5. $result=M("User")->$where("id = 1")->select();

2、Create操作

  1. create 返回值:

    1. $User = M("User");

    2. if($User->create()){

    3. //進行更多操作

    4. }

    5. 若發(fā)生錯誤,返回false;

    6. 成功則返回創(chuàng)建的數(shù)據(jù)
      create為非鏈式操作,返回值為可能為布爾值,所以操作時要進行嚴格判斷:

       


  2. add 返回值,addAll 返回值

    1. 成功:如果主鍵是自動增長型,返回值為新增記錄Id值(addAll為最大值),否則返回true;

    2. 發(fā)生錯誤返回 false;

3、update操作

  • save 返回值(setField、setInc、setDec最后調用的都是save方法,所以返回值與save一致):
    save 返回值是影響的記錄數(shù)(有可能為0),更新出錯返回false,因此一定要用恒等來判斷是否更新失敗。

4、read操作

  1. find 返回值
    如果查詢出錯,find的返回值為false
    如果查詢結果為空返回NULL,查詢成功則返回一個關聯(lián)數(shù)組(鍵值是字段名或者別名)。

  2. select 返回值
    如果查詢出錯,select的返回值是false,
    如果查詢結果為空,則返回NULL,否則返回二維數(shù)組。

  3. getField 返回值

    1. getField($field):$field為一個字段,返回數(shù)據(jù)庫中該字段的第一行的值

    2. getField($field,true):$field為一個字段,返回包含該字段的一維數(shù)組

    3. getField($fields):$fields為兩個字段(以“,”隔開),返回array($field1=>$field2)的數(shù)組;若$field為多個字段,返回類似select的多維數(shù)組,鍵名為field1。

    4. getField($fields,”:”):$field為多個字段,返回類似array($field1=>”$field2:$field3”)的數(shù)組

    5. 如果查詢出錯,getField的返回值為false

    6. 查詢成功:

  4. Count 、Max、Min 、Avg 、Sum返回值
    如果查詢出錯,返回值為false
    查詢成功,則返回對應的值

5、Delete操作

  • delete 返回值:成功則返回true,查詢錯誤則返回false

“ThinkPHP中數(shù)據(jù)庫操作返回值的方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI