2016-03-01 49 views
1

嗨我正在參數綁定查詢Phalcon。以下是我的代碼如何在查詢綁定參數中添加2個以上的條件

​​

我是否使用AND正確? FYI它不工作,如果我嘗試以下方法,它的工作原理:

$conditions = "client = :client: AND inv_date = :inv_date:"; 
$parameters = array(
    "client" => $search_client, 
); 
$invoices = Invoices::find(
    array(
     $conditions, 
     "bind" => $parameters 
    ) 
); 

在表中存在的所有領域,我覺得有這個代碼沒有按」其他方式使用多個AND

+0

這是正確的方法。你的兩個例子都使用相同的技術,所以我的猜測是沒有匹配你的第一個查詢條件的記錄。 還有其他方式可以使用多個條件,即Phalcon查詢生成器。查詢生成器示例: '$ robots = Robots :: query() - > where(「type =:type:」) - > andWhere(「year <2000」) - > bind(array(「type」 =>「mechanical」)) - > order(「name」) - > execute();' –

+0

@NikiMihaylov,謝謝你 –

+0

你可以通過標記你的答案來解決問題,這樣其他人就可以使用它。 –

回答

1
$conditions = "client = :client: AND inv_date = :inv_date:"; 
$parameters = array(
    "client" => $search_client, 
); 
$invoices = Invoices::find(
    array(
     $conditions, 
     "bind" => $parameters 
    ) 
); 

因爲只傳遞一個參數客戶端,但必須傳遞兩個參數:client和inv_date。

$parameters = array(
    "client" => $search_client, 
    "inv_date" => $invoice_date, 
); 

因此 - 您可以使用此選項(因爲它確實有效),也可以使用像andWhere @Niki Mihaylov建議。