我无法找到一种方法来获取数组的元素(产品ID)并将它们添加到关联数组的特定键($ choices ['id]),以便它创建该数组的任意数量的实例($ choices [])因为$ id中有元素。
我希望$ choices []的最终版本包含与$ id []中的元素一样多的数组。
之后我想对part_numbers& amp;量。
// Create $choices array with keys only
$choices = array(
'id' => '',
'part_number' => '',
'quantity' => '',
);
// Insert $id array values into 'id' key of $choices[]
$id = array('181', '33', '34');
答案 0 :(得分:0)
如果我正确理解你的问题,你的意思是这样的吗?
$choices = array();
$id = array('181', '33', '34');
foreach($id as $element)
{
$choices[] = array(
'id' => $element,
'part_number' => '',
'quantity' => '',
);
}
echo "<pre>";
print_r($choices);
echo "</pre>";
输出:
Array (
[0] => Array
(
[id] => 181
[part_number] =>
[quantity] =>
)
[1] => Array
(
[id] => 33
[part_number] =>
[quantity] =>
)
[2] => Array
(
[id] => 34
[part_number] =>
[quantity] =>
)
)
编辑:
更通用的解决方案如下:
$choices = array();
$values = array('sku-123', 'sku-132', 'sku-1323');
foreach($values as $i => $value){
if(array_key_exists($i, $choices))
{
$choices[$i]['part_number'] = $value;
}
else
{
$choices[] = array(
'id' => '',
'part_number' => $value,
'quantity' => '',
);
}
}
这可以用于数组创建和插入,因此可以用于if / else块。