随机给0-4个条件,去查询数据库的信息,应该怎么写逻辑最好啊,查询最快?
if(里面不知道应该怎么写post,因为不知道会接收到几个值)
4 个解决方案
#1
假定 $_POST 关联键与字段同名
将 去掉不属于字段信息的成员 后的 $_POST 出递给 where 方法
将 去掉不属于字段信息的成员 后的 $_POST 出递给 where 方法
#2
多写几个条件就行了
if(!empty($name)){
$where." name = " = $name;
}
if(!empty($age)){
$where." age= " = $age;
}
$sql = "select * from table " .$where .$limit;
$result = $A->sql( $sql);
if(!empty($name)){
$where." name = " = $name;
}
if(!empty($age)){
$where." age= " = $age;
}
$sql = "select * from table " .$where .$limit;
$result = $A->sql( $sql);
#3
怎么去掉字段呢?用什么方法?
#4
$a = array('b'=>5,'a'=>1,'c'=>'m','a',9); //传入的数据Array ( [b] => 5 [a] => 1 [c] => m )
$k = array_flip(array('a','b','c','d')); //可能的键(M 函数车生的对象中应该就有)
$r = array_intersect_key($a, $k);
print_r($r);
#1
假定 $_POST 关联键与字段同名
将 去掉不属于字段信息的成员 后的 $_POST 出递给 where 方法
将 去掉不属于字段信息的成员 后的 $_POST 出递给 where 方法
#2
多写几个条件就行了
if(!empty($name)){
$where." name = " = $name;
}
if(!empty($age)){
$where." age= " = $age;
}
$sql = "select * from table " .$where .$limit;
$result = $A->sql( $sql);
if(!empty($name)){
$where." name = " = $name;
}
if(!empty($age)){
$where." age= " = $age;
}
$sql = "select * from table " .$where .$limit;
$result = $A->sql( $sql);
#3
怎么去掉字段呢?用什么方法?
#4
$a = array('b'=>5,'a'=>1,'c'=>'m','a',9); //传入的数据Array ( [b] => 5 [a] => 1 [c] => m )
$k = array_flip(array('a','b','c','d')); //可能的键(M 函数车生的对象中应该就有)
$r = array_intersect_key($a, $k);
print_r($r);