Php 如何在查询绑定参数中放置2个以上的条件
嗨,我正在处理参数绑定查询。下面是我的代码Php 如何在查询绑定参数中放置2个以上的条件,php,mysql,sql,parameters,phalcon,Php,Mysql,Sql,Parameters,Phalcon,嗨,我正在处理参数绑定查询。下面是我的代码 $conditions = "client = :client: AND inv_date = :inv_date: AND date_sent = :date_sent: AND date_received = :date_received:"; $parameters = array( "client" => $search_client, "inv_date" => $i
$conditions = "client = :client: AND inv_date = :inv_date: AND date_sent = :date_sent: AND date_received = :date_received:";
$parameters = array(
"client" => $search_client,
"inv_date" => $invoice_date,
"date_sent" => $date_sent,
"date_received" => $date_received
);
$invoices = Invoices::find(
array(
$conditions,
"bind" => $parameters
)
);
我是否正确使用了和??
仅供参考,它不起作用,如果我尝试以下方法,它会起作用:
$conditions = "client = :client: AND inv_date = :inv_date:";
$parameters = array(
"client" => $search_client,
);
$invoices = Invoices::find(
array(
$conditions,
"bind" => $parameters
)
);
所有字段都存在于表中,我认为还有其他方法可以使用多个和
$conditions = "client = :client: AND inv_date = :inv_date:";
$parameters = array(
"client" => $search_client,
);
$invoices = Invoices::find(
array(
$conditions,
"bind" => $parameters
)
);
此代码不起作用,因为您只传递一个参数client,但必须传递两个参数:client和inv_date
$parameters = array(
"client" => $search_client,
"inv_date" => $invoice_date,
);
因此,您可以使用此选项(因为它确实有效),也可以使用
和where
,如@Niki Mihaylov建议的那样。这是正确的方法。您的两个示例都使用相同的技术,所以我猜没有与第一个查询条件匹配的记录。还有其他方法可以使用多个条件,它是Phalcon查询生成器。查询生成器示例:$robots=robots::Query()->where(“type=:type:”)->and where(“year<2000”)->bind(数组(“type=”>“mechanical”)->order(“name”)->execute()代码>@NikiMihaylov,谢谢你,你可以通过标记你的答案来解决问题,这样其他人就可以使用它了。查询是正确的。您的查询参数之一是空
。我猜它是返回空对象。