当 PHP 变量中包含特定列值时,我想返回特定表中的所有行,例如:第 34 行:列 'xyz' 值等于 = "rabbit" 并且我的 php 变量是$var = "rabbit,robert,teen"
,并且因为“ xyz”列值包含在$var
我希望它被选中。
我怎样才能做到这一点?
将逗号分隔的列表转换为 sql 格式并放在查询中
$query = "select blah blah WHERE xyz IN ('".str_replace("," ,"','", $var)."');"
如果我正确理解了您的问题,那么您正在寻找这样的东西:
$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)
注意:不要忘记清理/转义/清理用户的输入。