今天遇到一個問題,就是在vendor表中查詢出vendor_id = vendor_f_id的數據,其實使用原生的sql語句是非常簡單的:
select * from vendor where vendor_id = vendor_f_id
但是,在thinkphp中為了程式碼的簡潔以及通用性,不考慮使用原生的方式進行sql的查詢,而是採用查詢map的方式進行查詢
$condition[ 'vendor_f_id' ] = 'vendor_id';
但是,thinkphp在處理上述條件的時候,將其轉換為了以下程式碼:
select * from vendor where vendor_f_id = 'vendor_id'
也就是說,vendor_id被當成了一個字串進行處理了
解決上述問題的方法是:
$condition[ 'vendor_f_id' ] = [ 'exp' , ' = vendor_id ' ]
更多ThinkPHP相關技術文章,請造訪ThinkPHP使用教學欄位進行學習!
以上是thinkphp exp的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!