Нужно написать стандартный запрос к БД используя PDO php ничего сложного. Вот запрос, который я использую:
$db = Db::getConnection();
$result = $db->query("SELECT login, id FROM shops WHERE login LIKE '%$text%'");
return $result->fetchAll();
Запрос возвращает массив данных, которые возвращают одну и ту же запись 2 раза т.е так:
Array ( [login] => логин [0] => логин [id] => 10 [1] => 10 )
Ну соответственно задается вопрос если работать с большим объемом данных не скажется ли это на скорости выполнения запроса? И как написать правильный запрос к БД чтобы он возвращал массив без раздвоения данных?
Правильно будет использовать биндинг параметров при выполнении запроса и извлечение только именованных (или наоборот) столбцов результирующего набора.
$sql = 'SELECT login, id FROM shops WHERE login LIKE :txt';
$sth = $dbh->prepare($sql);
$sth->execute( [':txt' => "%{$text}%"] );
$result = $sth->fetchAll(PDO::FETCH_ASSOC);
Сборка персонального компьютера от Artline: умный выбор для современных пользователей