我有下面的数组示例,我用于根据表单中选中的选项动态创建SQL查询.下面的代码测试是否有值,如果是,则将其附加到数组:
if ($lookchild) { $val[]='lookchild'; }
if ($mentalcap) { $val[]='mentalcap'; }
if ($mentalheal) { $val[]='mentalheal'; }
if ($olderpeople) { $val[]='olderpeople'; }
if ($palcare) { $val[]='palcare'; }
Run Code Online (Sandbox Code Playgroud)
然后我循环遍历数组并添加其余的SQL语句:
foreach ($val as $r){
echo $r.'=1 AND ';
}
Run Code Online (Sandbox Code Playgroud)
这会产生:
olderpeople=1 AND palcare=1 AND lookchild=1 AND
Run Code Online (Sandbox Code Playgroud)
当循环到达最后一个条目时,我不希望它将AND附加到它,因为SQL语句需要在该点之后关闭.
我希望它如何完成:
olderpeople=1 AND palcare=1 AND lookchild=1
Run Code Online (Sandbox Code Playgroud)
Mic*_*son 10
在这些情况下,您可以使用implode
它将一个阵列"胶合"在一起.
implode(string $ glue,array $ pieces)
例:
echo implode('=1 AND ', $val);
echo '=1';
Run Code Online (Sandbox Code Playgroud)