我希望在PHP变量中包含特定列值时返回特定表中的所有行,例如:第34行:列'xyz'值等于=“rabbit”,我的php变量为{{ 1}},因为“xyz”列值包含在$var = "rabbit,robert,teen"
中,我希望它被选中。
我该怎么做?
答案 0 :(得分:2)
将逗号分隔列表转换为sql格式并放入查询
$query = "select blah blah WHERE xyz IN ('".str_replace("," ,"','", $var)."');"
答案 1 :(得分:0)
如果我理解你的问题,你正在寻找这样的事情:
$arr = explode(',', $var);
$where_in_val = '';
foreach($arr as $value){
$where_in_val.= "'$value',";
}
$where_in_val = substr($where_in_val,0,-1);
然后您的查询可能是这样的
SELECT * FROM my_table WHERE xyz IN ($where_in_val)
注意:不要忘记清洁/转义/清理用户的输入。