0

我这个 PHP foreach 代码写得正确吗?

$colors = $_GET['color'];
$i = 0;
foreach (explode(' ', $colors) as $color) 
{
    $items = $con -> prepare(
        "SELECT * FROM item_descr WHERE color_base1 = :colorbase1");
    $items -> bindValue(":colorbase1", $color[$i]);
    $i++;
}

我无法让 SQL 工作。

4

1 回答 1

3

我认为这应该满足您的要求 - 您$color在 foreach 中作为变量生成,但您将其作为数组访问。

$colors = explode(' ', $_GET['color']);
foreach ($colors as $color) 
{
    $items = $con -> prepare(
        "SELECT * FROM item_descr WHERE color_base1 = :colorbase1");
    $items -> bindValue(":colorbase1", $color);
}
于 2012-08-17T19:40:49.207 回答