php - 关联数组插入Mysql

标签 php mysql arrays

我有以下数组...

Array
(
    [ID] => 10
    [code] => KA
    [rol] => B
    [pr] => 
)

我想要的是当我将所有空数组键插入 MySQL 时填充 NULL...

这是我尝试过的...

foreach ($array as $key => $value) {
    $value = trim($value);
    if (empty($value))
        $value .= NULL;

    else
        echo $value;
    } 

或者以不同的方式...像这样..

$value = implode("', '",array_values($array));
$val = ($value == ' ') ? NULL : "$value";

并插入到表中..

$sql = "INSERT INTO table VALUES('$val')";

但我的字段似乎没有得到 NULL 值... 我做错了什么?

简而言之,如何将 Null 添加到空数组键...[pr]???

最佳答案

你可以这样做:

$sql = array();
foreach ($array as $key => $value) {
    $value = trim($value);
    $sql[] = empty($value)?'NULL':"'".addslashes($value)."'";
}
$sql = 'INSERT INTO table VALUES('.implode(",", $sql).')';

回显$值;如果您想将其用作查询,将不会帮助您。

但是: 不要这样做! 请改用准备好的语句。

示例: http://codepad.org/lZfgVwIL

关于php - 关联数组插入Mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18744066/

相关文章:

php - 如何在 Laravel 5.2 中比较行数据

使用 order by 子句的 mysql 查询

php 登录脚本如果返回 else 即使登录信息在 db 中是正确的

c++ - 二维数组— “Too many initializer values”警告/错误

c++ - Memcpy uint32_t 到 char*

php - 如何更改推送通知声音?

php - Jquery 可排序连接列表 + PHP/MySQL

php - 将页面设为公开,然后根据设置向公众隐藏页面。如何?

javascript - 将 id 从选择选项发送到 Laravel 中的 ajax

arrays - 输出数组命令测试器 symfony2