更新:
我从$_POST['changed'].
数组结构如下所示:
Array
(
    [0] => Array
        (
            [recid] => 1
            [nachname] => Müller7777
        )
    [1] => Array
        (
            [recid] => 3
            [vorname] => Maria123
        )
)
我在第 3 行遇到此错误:致命错误:函数名称必须是字符串
$uarr=array();
foreach ($_POST['changed'] as $a) {
  list($x,$k)=array_keys($a);
  list($y,$v)=array_values($a);
  $uarr[$y][]="$k='$v'";
}
foreach ($uarr as $k=>$v) {
  $sql = "";
  $sql .="UPDATE tbl SET ".join(",",$v)." WHERE recid=$k";
  // send UPDATE ...
}
file_put_contents('filename2.txt', $sql);
在我进行最终的数据库更新之前,我想检查创建的数组是否完成了它的工作。这就是为什么我想先将 $sql 变量写入 txt 文件。
------------------------------------------------
解决方案:
检查是否$_POST['changed'] == null是这个问题的最终答案。
if ($_POST['changed'] == null) {
} else {
$uarr=array();
$b = $_POST['changed'];
foreach ($b as $a) {
  list($x,$k)=array_keys($a);
  list($y,$v)=array_values($a);
  // $x contains the `recid` key 
  // $y ...                  value
  $uarr[$y][]="$k='$v'";
}
foreach ($uarr as $k=>$v) {
  $sql = "";
  $sql .="UPDATE tbl SET ".join(",",$v)." WHERE recid=$k";
  // send UPDATE ...
}
file_put_contents('filename2.txt', $sql);
}