我在处理$_POST['cpl']
时收到以下错误警告:array_merge():参数#1不是数组,尽管$_POST['add']
工作正常
if (is_array($_POST['add'])) {
foreach ($_POST['add'] as $key => $value) $_POST['add'][$key] = mysql_real_escape_string($value);
$en = array_merge($en, $_POST['add']);
}
if (is_array($_POST['cpl'])) {
foreach ($_POST['cpl'] as $key => $value) $_POST['cpl'][$key] = mysql_real_escape_string($value);
$cp = '';
$cp = array_merge($cp, $_POST['cpl']);
}
答案 0 :(得分:8)
那是因为$cp
是一个字符串(你明确地定义了它)。
$cp = ''; // <-- empty string
$cp = array_merge($cp, $_POST['cpl']);
应该是:
$cp = array(); // <--now it's an array
$cp = array_merge($cp, $_POST['cpl']);
答案 1 :(得分:4)
你有以下几行:
$cp = '';
$cp = array_merge($cp, $_POST['cpl']);
这是不言自明的:$cp
首先是一个字符串,错误就是这个事实。用array()
初始化它。