我试图爆炸一个数组来执行插入,但我无法触发我做的错误。 破灭()[function.implode]:无效参数传递 *请注意我的阵列尺寸不固定,所以我使用的foreach *Implode数组发出错误
阵列结构
[attcode] => Array ([0] => [1] => [2] =>)
[color] => Array ([0] => [1] => [2] =>)
[size] => Array ([0] => [1] => [2] =>)
[stock] => Array ([0] => [1] => [2] =>)
工作码
$attstring = array();//array for storing query set
foreach($productcount['attcode'] as $attcode){
$attstring[] = "'" . implode("','", $attcode)."'";
}
foreach($productcount['color'] as $attcolor){
$attstring[] = "'" . implode("','", $attcolor)."'";
}
foreach($productcount['size'] as $attsize){
$attstring[] = "'" . implode("','", $attsize)."'";
}
foreach($productcount['stock'] as $attstock){
$attstring[] = "'" . implode("','", $attstock) . "'";
}
$finalvalue = "(" . implode("), (", $attstring) . ")";
echo $finalvalue;
所需输出
('code','color','size',stock),
('code','color','size',stock),
('code','color','size',stock)
我很好奇,看到实际的阵列布局。是0,1,2的值?按键? – Dutchie432 2011-12-20 09:18:21
foreach块中的implode是错误的,因为你没有传递数组 – Dan 2011-12-20 09:18:46
foreach迭代数组,所以$ attcode是一个字符串,而不是数组,这就是为什么implode不工作。 – Demelziraptor 2011-12-20 09:25:07