在cakephp中如何在NOT in condition中传递内爆值
当我试图在cakephp中如何在NOT in condition中传递内爆值,php,cakephp,Php,Cakephp,当我试图打印时($temp);退出()我得到以下逗号分隔形式的值 805806 但是,当我在我的非条件中传递此值时,它仅适用于806而不适用于805和806 下面是我的代码 public function newOrderList() { if($this->processRequest){ $conditio = array('User.id'=>$this->requestData['courierId'],'User.user_type'
打印时($temp);退出()代码>我得到以下逗号分隔形式的值
805806
但是,当我在我的非条件中传递此值时,它仅适用于806
而不适用于805
和806
下面是我的代码
public function newOrderList() {
if($this->processRequest){
$conditio = array('User.id'=>$this->requestData['courierId'],'User.user_type'=>2);
$checkUser = $this->User->find('first',array('conditions'=>$conditio));
if(!empty($checkUser)){
$courierId = $this->requestData['courierId'];
$cond = array('OrderRejectedDetail.courier_id'=>$courierId);
$ordRej = $this->OrderRejectedDetail->find('all',array('conditions'=>$cond));
if(!empty($ordRej)){
foreach ($ordRej as $key => $value) {
$orderId[] = $value['OrderRejectedDetail']['order_id'];
}
$temp = implode(',',$orderId);
}
$data = $this->Order->find('all', array(
'conditions' => array(
"NOT" => array("Order.id" => array($temp))
)
));
print_r($data); exit();
}
}
}
您不再需要内爆,请将您的代码设置为:
if(!empty($ordRej)){
foreach ($ordRej as $key => $value) {
$orderId[] = $value['OrderRejectedDetail']['order_id'];
}
// $temp = implode(',', $orderId);
}
$data = $this->Order->find('all', array(
'conditions' => array(
'NOT' => array('Order.id' => $orderId)
)
));
您不再需要内爆,请将您的代码设置为:
if(!empty($ordRej)){
foreach ($ordRej as $key => $value) {
$orderId[] = $value['OrderRejectedDetail']['order_id'];
}
// $temp = implode(',', $orderId);
}
$data = $this->Order->find('all', array(
'conditions' => array(
'NOT' => array('Order.id' => $orderId)
)
));
您是否尝试过这样的方法:“Order.id”=>explode(“,”,$temp)您需要像这样传递它:不在('805','806')
为什么您首先需要内爆?您是否尝试过这样的方法:“Order.id”=>explode(,“,$temp)您需要像这样传递它:不在('805','806')
为什么您首先需要内爆?