如何将数组传递给IN()子句?

Sha*_*deh -1 php mysql arrays

我有这样一个数组:

$str = 'In My Cart : 11 12 items';
preg_match_all('!\d+!', $str, $matches);
print_r($matches); // output is two number: 11, 12
Run Code Online (Sandbox Code Playgroud)

现在我想知道,如何将此数组传递$matches给此查询?

SELECT column_name(s)
FROM table_name
WHERE column_name IN ($matches); // actually I want something like this: IN (11, 12)
Run Code Online (Sandbox Code Playgroud)

有什么解决方案吗?

Sou*_*ose 5

使用implode-

"SELECT column_name(s)
FROM table_name
WHERE column_name IN (" .implode(',', $matches[0]) . ")";
Run Code Online (Sandbox Code Playgroud)