问题: 使用 PDO 准备好的语句创建辅助函数以简化数据操作。该函数应生成一个 SET 语句来更新现有记录,并允许轻松插入新数据。
解决方案:
function dbSet($fields, &$values) { $set = ''; $values = array(); foreach ($fields as $field) { if (isset($_POST[$field])) { $set .= "`$field` = ?, "; $values[] = $_POST[$field]; } } return rtrim($set, ','); } $fields = explode(" ", "name surname lastname address zip fax phone date"); $_POST['date'] = $_POST['y'] . "-" . $_POST['m'] . "-" . $_POST['d']; $query = "UPDATE $table SET " . dbSet($fields, $values) . ", stamp=NOW() WHERE>
此函数采用字段数组名称和对值数组的引用。它遍历字段名称,检查 POST 数据中是否存在相应的值。如果是,则构造一个 SET 语句片段。对值数组的引用允许函数用适当的值填充它。
要使用该函数,首先将字段名称分解为数组。然后调用该函数,传递字段数组和对空值数组的引用。该函数返回一个 SET 语句片段。最后,准备查询并使用值数组执行它。
注意事项:
以上是如何创建 PDO 辅助函数以实现高效的插入/更新操作?的详细内容。更多信息请关注PHP中文网其他相关文章!