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);