分解多维数组并循环到wpdb update

时间:2013-01-31 01:00:03

标签: php mysql arrays wordpress

我有一个如下所示的数组:

Array
(
    [72] => Array
      (
        [description] => data
        [tags] => data1
        [extra] => data1
        [extra2] => data3
      )
    [71] => Array
      (
        [extra] => data4
        [extra2] => data5
      )
    [73] => Array
      (
        [description] => data7
        [tags] => data6
      )
)

我想把它放到sql update语句中。数组的第一级是我需要设置为WHERE子句的唯一键,其余数据是具有各自值的列名。此数据因用户设置而异。

编辑:这非常容易。

foreach($save as $id => $arr) {
    $wpdb->update( $table_name, $arr, array('id' => $id));
}

然而,这不使用wpdb prepare,这似乎是必要的。如何操作此代码以允许wpdb-prepare

我在wpdb prepare和update上找到的唯一代码如下所示:

$rows_affected = $wpdb->query(
            $wpdb->prepare("
               UPDATE $table
               SET ( removed, post_id, user_id, status )
               VALUES ( %s, %d, %d, %d )
               ",
               array(
                $cur_date,
                $postid,
                $userid,
                0
            )
        )
    );

1 个答案:

答案 0 :(得分:0)

所以回答这个问题, 你已经想通了

  1. 你可以在另一个foreach中使用foreach,它会遍历项目。
  2. 更新功能已为您准备并消毒,因此无需拨打wp prepare功能。
  3. 快乐的日子。

相关问题