Bạn có thể tạo danh sách các tiêu chí và thêm vào danh sách các giá trị và kiểu ràng buộc, đây là một mô hình nhanh sử dụng hai trong số các trường mà bạn tham khảo ...
$data = [];
$params = "";
$where = [];
if ( !empty($name)) {
$data[] = $name;
$params.="s";
$where[] = "name like ?";
}
if ( !empty($size)) {
$data[] = $size;
$params.="i";
$where[] = "size < ?";
}
$sql = "SELECT * FROM items";
if ( count($where) > 0 ){
$sql .= " where ". implode ( " and ", $where);
}
$query = $database->prepare($sql);
$query->bind_param($params, ...$data);
$query->execute();
Lưu ý rằng bind_param()
sử dụng ...
để cho phép bạn chuyển một mảng thay vì các trường riêng lẻ.