【发布时间】:2015-07-04 17:48:13
【问题描述】:
这里是生成的数组:
$data = array();
for($i = 0; $i < 100; $i++){
$data[] = array(
'name' => md5(rand()),
'active' => rand(0, 1)?'active':'banned',
'create_date' => rand(0, 1)?'now':'2014/12/31 14:51:52',
'income' => base64_encode(rand(-9999, 9999)),
);
}
我尝试将此数据保存到数据库:
$columns = implode(", ",array_keys($data));
$escaped_values = array_map('mysql_real_escape_string', array_values($data));
$values = implode(", ", $escaped_values);
$sql = "INSERT INTO `data`($columns) VALUES ($values)";
但不幸的是它不起作用,显示此警告:“MYSQL_REAL_ESCAPE_STRING() EXPECTS PARAMETER 1 TO BE STRING, ARRAY GIVEN IN...”
如何解决?
【问题讨论】:
标签: php arrays database mysqli