【问题标题】:Update row based on associative array $key = column $value=value根据关联数组更新行 $key = column $value=value
【发布时间】:2012-03-26 18:24:29
【问题描述】:

我需要从 POST 的关联数组构建更新查询

POST 包含多个关联数组和一对键/值对

我可以整理出要使用的数组,但一直在构建更新查询字符串

array1 (
i => 1 // This is used for each WHERE clause and is the row id
a => 2
b => 3
c => 4
)

array2 (
i => 2
a => 2
b => 3
c => 4
)

我需要: "UPDATE table SET a='2', b='3', c='4' WHERE id='array[i]'"

我尝试过各种 foreach,同时,从其他帖子拼凑出的 implode 方法,但没有一个解决这个特定问题。任何帮助,将不胜感激。谢谢

【问题讨论】:

    标签: php associative-array implode


    【解决方案1】:

    尝试以下方法:

    $id = array_shift($array);
    $fields = array();
    
    foreach($array as $field => $val) {
       $fields[] = "$field = '$val'";
    }
    
    $query = "UPDATE table SET " . join(', ', $fields) . " WHERE id = '$id'";
    

    【讨论】:

    • 效果好极了!!!!非常感谢.. 从未使用过数组移位 - 添加到武器库中!!
    猜你喜欢
    • 2015-01-22
    • 2012-03-05
    • 1970-01-01
    • 2012-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-13
    • 1970-01-01
    相关资源
    最近更新 更多