是否可以在 PHP 中使用 MySQLi 在不知道字段名称、字段数量及其值的情况下使用数组更新表。
我已经尝试使用准备好的语句在键和值字段(?=?)上插入问号。我在想是否可以在更新查询中使用 () VALUES () 我可能有一个解决方案,但我猜不存在这样的事情。
看我的脚本:
<?php
class UserHandler {
public function updateUserData($array, $id) {
global $mysqli;
$stmt = $mysqli->prepare("UPDATE users SET ?=? WHERE id = ?");
$stmt->bind_param('ssi', $array[0], $array[1], $id);
$stmt->execute();
return true;
}
}
$users = new UserHandler;
?>
我希望用法是这样的:
<?php
$users->updateUserData(array(
'firstname' => 'Wanda',
'lastname' => 'Merritt',
'state' => 'IN'
'address' => '693 Pearcy Avenue',
'zipcode' => 46625,
), 45);
$users->updateUserData(array(
'firstname' => 'Stanley',
'lastname' => 'Lewis',
'password' => '123123'
), 159);
?>