这样一个一维数组,怎么把他弄成依次按照店铺名、颜色、尺码规格的一个多维数组?
------解决思路----------------------
在封装mysql类里面写个getall函数 和query函数
public function getall($sql)
{
$rs =$this->query($sql);
$list =array();
if(!$rs)
{
return false;
}
else{
while($row = mysql_fetch_assoc($rs))
{
$list[]=$row;
}
return $list;
}
}
public function query($sql)
{
return mysql_query($sql,$this->conn) ; //$this->conn是连接数据库的资源变量
}
在类的外面初始化一个对象,然后写三个sql语句获取三个列,把sql语句通过getall函数发出去获得结果,最后查询结果自己再写个数组放进去。。。封装类的内容太多就不写了,不知道能不能帮到楼主- -
------解决思路----------------------
$array=array(
array('ckmc'=>'store1','gg1mc'=>'color1','gg2mc'=>'size1'),
array('ckmc'=>'store1','gg1mc'=>'color1','gg2mc'=>'size2'),
array('ckmc'=>'store1','gg1mc'=>'color2','gg2mc'=>'size1'),
array('ckmc'=>'store1','gg1mc'=>'color2','gg2mc'=>'size2'),
array('ckmc'=>'store2','gg1mc'=>'color1','gg2mc'=>'size1'),
array('ckmc'=>'store2','gg1mc'=>'color2','gg2mc'=>'size2'),
);
$array2=array();
foreach($array as $val)
{
if(array_key_exists($val['ckmc'],$array2))
{
if(array_key_exists($val['gg1mc'],$array2[$val['ckmc']]))
{
$array2[$val['ckmc']][$val['gg1mc']][]=$val;
}
else $array2[$val['ckmc']][$val['gg1mc']]=array($val);
}
else $array2[$val['ckmc']]=array($val['gg1mc']=>array($val));
}
echo '';
print_r($array2);
echo '
';
