我有一个这样的数组:
$myarray= 'zzz,aaa,bbb' ;
并希望在mysql in子句中使用它,如下所示:
"... WHERE ids IN ($myarray) " // didnt work
"... WHERE ids IN ('$myarray') " // didnt work
im得到的错误是该数组CCD_ 1中的第一个值表示zzz不是列名。所以我明白,我必须用引号分隔这些值,这样:
$myarray= ' "zzz","aaa","bbb" ' ;
但我不知道该怎么做。任何帮助都将不胜感激。
$myarray = 'zzz,aaa,bbb';
$myarray = implode("','",explode(',',$myarray));
$query = "..... WHERE ids IN ('$myarray')";
您需要explode()
您的字符串,然后implode()
它-
$myarray = 'zzz,aaa,bbb';
$realArray = explode(',', $myarray);
$stringForIn = "'" . implode("','", $realArray) . "'";
echo "WHERE ids IN ($stringForIn)";
试试看:
$myarray= 'zzz,aaa,bbb' ;
echo implode '"' . ('","', explode(',', $myarray)) . '"';