我正在使用以下格式的网络浏览器将参数传递给我的 php 代码:
www.site.php?age=1&sex=2
然后在访问这些参数的代码中:
'age' => $_GET['age']
'sex' => $_GET['sex']
一个参数需要是一组逗号分隔值(即“1,2,3,4,5”)。当我执行以下操作时,只有第一个值被解释:
www.site.php?age=1&sex=2&nums=1,2,3,4,5
我尝试过使用括号、括号等,它们都破坏了代码。有什么想法吗?谢谢,
编辑:我错误地假设错误发生的时间。尝试实际进行 sql 调用时发生错误:
这有效:
$sql = <<<SQL
SELECT * from db
WHERE age=:age AND nums in (1,2)
SQL;
$query = $dbs['base']['connection']->prepare($sql);
$query->execute(array(
':age' => $_GET['age'],
));
但是当我传入数字时它失败了:
$sql = <<<SQL
SELECT * from db
WHERE age=:age AND nums in (:nums)
SQL;
$query->execute(array(
':age' => $_GET['age'],
':nums' => $_GET['nums']
));
当我只打印 $_GET['nums'] 时,逗号分隔的值就可以了。如何正确地将“nums”参数传递给 sql 查询?