Medoo MySQL не читает переменную

Я использую платформу Medoo MySQL, но столкнулся с этой проблемой при использовании IN в выражении WHERE:

$test = '1,2,3,4';

$count = $database->count("products", [
"AND" => [
"category_id" => $category['id'],
"id" => [$test]
]
]);

Результат подсчета должен быть 4, но я получаю 1. Однако:

$count = $database->count("products", [
"AND" => [
"category_id" => $category['id'],
"id" => [1,2,3,4]
]
]);

Дает мне правильный результат 4. Есть идеи? Заранее спасибо!

0

Решение

Попробуй это…

$test = array(1,2,3,4);

$count = $database->count("products", [
"AND" => [
"category_id" => $category['id'],
"id" => $test // variable without []
]
]);
1

Другие решения

$test = '1,2,3,4'; это строка Чтобы преобразовать его в массив, вам нужно использовать:

$test = explode(',', '1,2,3,4');

$count = $database->count("products", [
"AND" => [
"category_id" => $category['id'],
"id" => $test
]
]);
0

Следующее решение было размещено здесь:
https://github.com/catfan/Medoo/issues/637

$values = '2,123,234,54';

$database->select("account", "user_name", [
"OR" => [
"user_id" => explode(',',$values)
]
]);
0
По вопросам рекламы [email protected]