数组$solution是二维的。我需要将其内容保存到 SQL 表中。但是,在保存之前,我需要检查$solution[i][0]属于查询结果的那个SELECT num_arr FROM Schedule WHERE num_arr<>''。
问题出在线路上$vals = implode(...)。如何在数组的第 i 行内爆逗号$solution?现在这一行生成字符串0,0,0,0而不是正确的值。
$columns_land = array("`num_arr`","`start`","`fin`","`way`");
$cols_land = implode(",",$columns_land);
for($i=0; $i<sizeof($solution); $i++) {
$vals = implode(',', array_map('implode_comma', $solution[$i]));
query_land = "INSERT INTO `Sequence` (" . $cols_land . ")
VALUES " . $vals . "
WHERE num_arr='".$solution[$i][0]."'
AND num_arr IN (SELECT num_arr FROM Schedule WHERE num_arr<>'')";
$result_land = execute_query($query_land);
}
function implode_comma($arr) {
return '(' . implode(',', $arr) . ')';
}