这里是我的嵌套的foreach循环从数据库获取数据PHP创建嵌套的循环中单独列
while($attrib_rec = tep_db_fetch_array($attributes)) {
foreach($options_values as $option => $options_value){
foreach($options_value as $options_value_key => $each_value){
//make separate arrays of "option"
print 'option = '.$option.' , value = '.$each_value.'<br />';
}
}
}
我从这些循环得到的输出是
option = Type , value = GOLD
option = Type , value = SILVER
option = Type , value = BRONZE
option = Purity , value = Rough
option = Purity , value = Neat
option = Purity , value = Mixed
option = Purity , value = Random
option = Model , value = Old
option = Model , value = latest
option = Model , value = GOLD 1.0
option = Model , value = GOLD 1.1
option = Model , value = GOLD 1.2
option = Model , value = GOLD 1.3
我想达到的目标是将每个相同的“选项”值保存到一个数组中。 例如从上面的输出我应该得到3个数组。即
$type = array('GOLD', 'SILVER', 'BRONZE');
$purity = array('Rough', 'Neat', 'mixed', 'Random');
$model = array('Old', 'Latest', 'GOLD 1.0', 'GOLD 1.1', 'GOLD 1.2', 'GOLD 1.3');
对while循环的每次迭代它应该根据“选项”使数组数量。
如果第一次在while循环的下一次迭代中生成3个数组(如本例中),它可能会生成2个或4个数组,这取决于从DB获取的相同数量的“Option”。
您正在使用嵌套的'foreach'循环会显示输出,就像它显示的那样...您可以使用过滤器或'group by' – Lakshya