我有一个数组,其中包含数字“331,554,22”或它可能是“45”,可以说数组被称为$numbers
。PHP循环通过一个数组
我遍历数组,并为它的每个号码或入境要循环,不喜欢
UPDATE members SET x=1 where id=$numbers[x]
一个SQL查询可以有人帮助我一起去吗?
更新:另外,说我将查询值存储在我的数据库中的文本字段中,名为nums
,它看起来像例如。 “45,656,23”,我将如何将其转换为数组格式?
我有一个数组,其中包含数字“331,554,22”或它可能是“45”,可以说数组被称为$numbers
。PHP循环通过一个数组
我遍历数组,并为它的每个号码或入境要循环,不喜欢
UPDATE members SET x=1 where id=$numbers[x]
一个SQL查询可以有人帮助我一起去吗?
更新:另外,说我将查询值存储在我的数据库中的文本字段中,名为nums
,它看起来像例如。 “45,656,23”,我将如何将其转换为数组格式?
如果veriable "331,554,22"
不是一个数组(字符串), 爆炸它首先
然后。
的foreach:
foreach ($numbers as $number)
{
//query like SET x=1 where id=$number
}
为:
for($i = 0; $i < count($numbers); $i++)
{
//query like SET x=1 where id=$numbers[$i]
}
如果x永远是1,你可以在使用,
$query = "UPDATE table SET x = 1 WHERE id IN(" . implode(',',$numbers) . ")"
如果$numbers
变量是字符串,x
会为每个ID为1
,忘记我写的所有内容,然后试试这个:)
$query = "UPDATE table SET x = 1 WHERE id IN({$numbers})"
就这么简单? :○ – user1022585
foreach($numbers as $number) { $sql = "UPDATE some_table SET X = 1 WHERE id = ".$number }
希望它可以帮助
$query = "UPDATE members SET x=1 WHERE id IN(".implode(",", $numbers).")";
它的一个字符串,所以,是的爆炸我猜。
$query = "UPDATE members SET x=1 WHERE id IN({$numbers})";
<?php
$numbers = array(25, 658, 968, 548, 698, 365);
foreach($numbers as $number){
echo "UPDATE members SET x=1 where id=$number\n";
}
?>
OUTPUT
UPDATE members SET x=1 where id=25
UPDATE members SET x=1 where id=658
UPDATE members SET x=1 where id=968
UPDATE members SET x=1 where id=548
UPDATE members SET x=1 where id=698
UPDATE members SET x=1 where id=365
“331,554,22” - 这是一个真正的阵列,或者是它由逗号分隔的一串数字?如果是后者,则需要先“爆炸()”,然后才能有数组。 只是问。 –
它的一个字符串,所以,我猜是爆炸。 – user1022585