php将数组转化成拼接IN字符串实现mysql使⽤wherein⽤法
select * from table where uname
in(‘aaa’,bbb’,‘ccc’,‘ddd’,‘eee’,ffff’’);
/* 拼接成in格式: IN('a','b','c')
* @access  public
* @param    mix      $list      列表数组或字符串
* @return  string
*/
function create_in($list='')
{
if(empty($list)){
return" IN ('') ";
}else{
$str=joinString($list);
return trim($str)==''?" IN ('') ":" IN (".$str.") ";
}
}
/*
* @name 拼接字符串,并且去掉重复项: 'a','b','c'
* @access  public
* @param    mix      $list      列表数组或字符串
* @param    bool  $res_arr 是否返回数组
* @return  string
*/
function joinString($list='',$delimiter=',',$res_arr=false)
{
数组转换成字符串
if(!is_array($list)){
$list=explode($delimiter,$list);
}
$list=array_unique($list);
$arr=array();
foreach($list AS$v){
if(is_array($v)){
foreach($v as$key=>$val){
$arr[]="'".$val."'";
}
}elseif($v!==''){
$arr[]="'$v'";
}
}
if($res_arr){
return$arr;
}
return count($arr)==0?" ":join($delimiter,$arr);
}
Done!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。