mysql - thinkphp的where中使用id欄位時的異常?

來源:互聯網
上載者:User
關鍵字 thinkphp php mysql
    $n=M("Nav");    $name=$n->where(array('id'=>4))->find();    echo $n->getLastSql();    

輸出的結果是:

SELECT * FROM `aa_nav` LIMIT 1

為什麼where條件沒有了?
當我where條件不用數組,而用字串的時候就沒問題。

回複內容:

    $n=M("Nav");    $name=$n->where(array('id'=>4))->find();    echo $n->getLastSql();    

輸出的結果是:

SELECT * FROM `aa_nav` LIMIT 1

為什麼where條件沒有了?
當我where條件不用數組,而用字串的時候就沒問題。

thinkphp 3.2.3 表示一切正常,可以用array

不清楚是否是版本問題,3.x版是不會有這個問題的。

['id']=4

應該可以

確認有id這個欄位?

問題解決了,說明一下具體情況:
1.用mysql-front工具建的表,預設的情況下有一個自增的列名為"Id",而不是"id";
2.用thinkphp的where條件的時候,如果是用字串的形式,應該是不區分大小寫,所以我把Id寫成id也一樣可以,但用數組的形成的時候是區分大小寫,大小寫寫錯了就會出問題了。

另外,謝謝各位的回答。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.