[英]Determine if CodeIgniter active record have set a WHERE-clause
oo! 好吧,標題應該說大部分。 有什么方法可以檢查以前是否設置了$this->db-where('stuff', $data)
?
我可以出去對自己的代碼(標志等)進行大量測試,但我想知道是否有人知道一些快速簡便的方法!
提前致謝!
[編輯-2014年4月24日]這是我自己的代碼。 我必須設置為null
, String
或array
變量。 它們是$categories
和$budget
。 因此,如果將預算設置為100$
並且將類別設置為stuff
那么我將需要使用db->or_where
,但是如果僅設置其中之一,則只需要使用db->where
。 在這種情況下,僅檢查是否設置了first很簡單,但是如果使用更多的值怎么辦? 我希望你明白了:)
是的,您可以輕松確定是否設置了where子句。 在CodeIgniter中,Active Record類將ar_where
存儲在名為ar_where
的數組中。 您可以使用此數組來確定是否設置了where子句。
例如,檢查以下代碼片段:
$this->db->select()
->from("foo")
->where('bar',NULL);
$this->db->or_where('xyz',NULL);
print_r(sizeof($this->db->ar_where));
以下將輸出值2
。 因此,您可以使用此數組檢查結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.