Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从PHP/MySQL生成多维数组_Mysql - Fatal编程技术网

从PHP/MySQL生成多维数组

从PHP/MySQL生成多维数组,mysql,Mysql,我希望在mysql表中获得相同的结果。在我的桌子下面: CREATE TABLE IF NOT EXISTS `map_point` ( `Id` int(11) NOT NULL AUTO_INCREMENT, `Location` varchar(80) NOT NULL, `type` varchar(80) NOT NULL, `icon` varchar(70) NOT NULL DEFAULT '', PRIMARY KEY (`Id`) ) ENGINE=MyI

我希望在mysql表中获得相同的结果。在我的桌子下面:

CREATE TABLE IF NOT EXISTS `map_point` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `Location` varchar(80) NOT NULL,
  `type` varchar(80) NOT NULL,
  `icon` varchar(70) NOT NULL DEFAULT '',
  PRIMARY KEY (`Id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=898 ;

类型为第1阶段、第2阶段。。。。。。最终的多维数组必须显示如下:

$data = array ( "Phase1" => array("name"=>"Phase 1", "icon"=>"icons/iconb.png"),
                "Phase2" => array("name"=>"Phase 2", "icon"=>"icons/icong.png"),
                "Phase3" => array("name"=>"Phase 3", "icon"=>"icons/iconr.png"),
                "Phase2p" => array("name"=>"Phase 2+", "icon"=>"icons/icony.png"),
                "Phase3p" => array("name"=>"Phase 3+", "icon"=>"icons/iconpi.png"),
                "RollOut2012" => array("name"=>"Roll Out 2012","icon"=>"icons/iconor.png"),
                "RollOut120sites" => array("name"=>"Roll Out 120 Sites", "icon"=>"icons/iconma.png"),                   
);

提前谢谢你的帮助。

你可以试试这种东西

$jsondata = array();
$result = mysql_query("SELECT type AS name, icon FROM map_point");
while($row = mysql_fetch_assoc($result)) { 
  if(!array_key_exists($row['type'], $jsondata))
    $jsondata[$row['name']] = $row
  else
    array_push($jsondata[$row['name']] , $row)
}

问题是演示如何返回按结果集中指定列的值分组的关联数组$result1=mysql\u查询(“选择不同类型作为名称,图标来自
map\u point
”;而($row1=mysql\u fetch\u assoc($result1)){array\u push($json\u data1,$row1);}您从哪里获得键“Phase 1”、“Phase3p”、“RollOut2012”等等。。。从哪里来的?我桌上已经有了。列“类型”。输入:对于输出,我拥有每种类型的所有原始数据。数组“Phase1”=>array“name”=>string“Phase1”(长度=6)“icon”=>string“icons/iconb.png”(长度=15)0=>array“name”=>string“Phase1”(长度=6)'icon'=>string'icons/iconb.png'(长度=15)1=>正确的查询是$result=mysql\u查询(“选择不同类型作为名称,图标来自映射点”);非常感谢你的帮助。。。。现在工作很好!!!!