Php 将1D数组转换为2D JSON数组,并对每个单元格进行说明
(请原谅术语上的错误,我对json不是很熟悉) 我有一个地图数组,每个单元格都包含地图详细信息[map][details]。当我将数组编码为json时,我得到了数组的有效json表示 我的问题是,如何将每个贴图的一维数组更改为具有单元格描述的二维数组,例如“map_id”=“23”,而不仅仅是“23” 我通过简单地使用Php 将1D数组转换为2D JSON数组,并对每个单元格进行说明,php,arrays,json,Php,Arrays,Json,(请原谅术语上的错误,我对json不是很熟悉) 我有一个地图数组,每个单元格都包含地图详细信息[map][details]。当我将数组编码为json时,我得到了数组的有效json表示 我的问题是,如何将每个贴图的一维数组更改为具有单元格描述的二维数组,例如“map_id”=“23”,而不仅仅是“23” 我通过简单地使用 json_encode(Maps::getAllMaps()); 我是否应该将数组转换为3D数组[maps][detail][value],然后进行编码?我通过在编码之前将2D
json_encode(Maps::getAllMaps());
我是否应该将数组转换为3D数组[maps][detail][value],然后进行编码?我通过在编码之前将2D数组转换为3D数组来修复它。下面是代码:
$maps = UserMaps::getMapIDs($user_id); // get map IDs user has access to
$mapsData = array(); // create new array to store data from the maps
foreach ($maps as $key => $value) { // for each map user has access to
$mapData = Maps::getMap($maps[$key]['map_id']); // get map properties
$map = array();
for($i=0; $i<11; $i++){
$property = array(); // create property array
$property[] = $properties[$i]; // add property title
$property[] = $mapData[$i]; // add value
$map[] = $property;
}
$mapsData[] = $map; // push map data into new array cell
}
// var_dump($mapsData);
if($mapsData == NULL) { echo "no maps to display"; }
return $mapsData;
$maps=UserMaps::getMapIDs($user_id);//获取用户有权访问的地图ID
$mapsData=array();//创建新阵列以存储地图中的数据
foreach($maps as$key=>$value){//,因为每个地图用户都有权访问
$mapData=Maps::getMap($Maps[$key]['map\u id']);//获取地图属性
$map=array();
对于($i=0;$i)
$maps = UserMaps::getMapIDs($user_id); // get map IDs user has access to
$mapsData = array(); // create new array to store data from the maps
foreach ($maps as $key => $value) { // for each map user has access to
$mapData = Maps::getMap($maps[$key]['map_id']); // get map properties
$map = array();
for($i=0; $i<11; $i++){
$property = array(); // create property array
$property[] = $properties[$i]; // add property title
$property[] = $mapData[$i]; // add value
$map[] = $property;
}
$mapsData[] = $map; // push map data into new array cell
}
// var_dump($mapsData);
if($mapsData == NULL) { echo "no maps to display"; }
return $mapsData;