Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用CI活动记录将数据插入带有空格的字段名?_Php_Mysql_Codeigniter_Codeigniter 2 - Fatal编程技术网

Php 如何使用CI活动记录将数据插入带有空格的字段名?

Php 如何使用CI活动记录将数据插入带有空格的字段名?,php,mysql,codeigniter,codeigniter-2,Php,Mysql,Codeigniter,Codeigniter 2,如何在名称包含空格的字段中插入数据。 例如: 插入批处理也不起作用 $data = array( array( "First Name" => "Bob", "Email ID" => "bob@example.com" ), array( "First Name" => "Joe", "Email ID" => "Joe@example.com" ) ); $this->

如何在名称包含空格的字段中插入数据。 例如:

插入批处理也不起作用

$data = array(
    array(
        "First Name" => "Bob",
        "Email ID" => "bob@example.com"
    ),
    array(
        "First Name" => "Joe",
        "Email ID" => "Joe@example.com"
    )
);
$this->db->insert_batch("table_name", $data);

检查以下代码。这对我很有用。使用
$db->set
方法

foreach($data as $key=>$val)
{
$this->db->set($key, $val);
}
$this->db->insert('table_name');
对我来说

foreach($data as $key=>$val)
{
$this->db->set($key, $val);
}
$this->db->insert('table_name');
。。什么也没变!:(

«Adj Close»获取查询中的«Adj Close»。使用'as'

所以我必须这样做:

foreach ($data as $k => $v) {
    if (strstr($k," ")){
       $this->db->set('`'.addslashes($k).'`', $v, false);
       unset($data[$k]);
    }
}
$returnDB = $this->db->insert($table, $data);

然后它成功了!

谢谢。我来检查一下。我使用静态SQL使用
$this->db->query()
来解决问题:)我已经检查了我的本地系统。工作正常,批次在哪里?循环插入stmt符合此实践是“不做什么”中添加的实践之一。。。可能会让您了解如何管理列名中的空间。
foreach ($data as $k => $v) {
    if (strstr($k," ")){
       $this->db->set('`'.addslashes($k).'`', $v, false);
       unset($data[$k]);
    }
}
$returnDB = $this->db->insert($table, $data);