php - 重构字母通配符语句

标签 php mysql pdo

如何重构它以处理每个字母(a 到 z)我不想为每个字母重新编写查询。

显示 HTML:

<div class="questionWrapper">
  <div class="question">
    <h3>A</h3>
    <?php foreach ($categoryA as $category) : ?>
       <p class="view"><?= $category['category']; ?></p>
    <?php endforeach; ?>
  </div>
</div>

查询示例:

$categoryA = query('SELECT * FROM category WHERE category LIKE "A%"',
  array('category' => ['category']),
  $conn);

$categoryB = query('SELECT * FROM category WHERE category LIKE "B%"',
  array('category' => ['category']),
  $conn);

功能:

function query($query, $bindings, $conn)
{
    $stmt = $conn->prepare($query);
    $stmt->execute($bindings);
    return $stmt;
}

最佳答案

我为您修复了使用占位符的问题:

$category = query('SELECT * FROM category WHERE category LIKE :category',
  array(':category' => '%'.$letter.'%'),
  $conn);

关于php - 重构字母通配符语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24680465/

相关文章:

php - 检查空结果(PHP、PDO 和 MySQL)

php - 通过 htaccess 为登录用户强制 https

PhpStorm - 参数的 PHPDoc "any"类型

mysql - 从同一表中选择的 SQL 子查询

php - bindParam 和 bindValue 有什么区别?

php - 今天 PDO 是否转义 "%"和 "_"

php - 在 Javascript Jquery 中提醒变量时不更新文本字段错误的值

php - Paypal 个人对个人支付与 PHP 集成

MySQL SUM() 与 JOIN 和 LIMIT

mysql - 聚合3个表,检索其中一个表的所有数据