将样式化的谷歌地图的JSON数组添加到php


Adding a JSON array for styled google maps to php?

问这个问题我感觉很糟糕。如果我试图做的事情是不可能的,请告知。

我是一名图形/网页设计专业的学生,到目前为止只擅长html。我正在使用谷歌地图组件,并希望使用 API 向导设置地图样式。如下: http://pastebin.com/YsKbyS58

问题是示例使用静态html并且组件是基于php的:http://pastebin.com/XrEMmTVJ

我可以将 JSON 数组注入到 PHP 文件中吗?语法会是什么样子?

谢谢!

用于设置地图样式的Google地图语法是这样的(使用您的php脚本):

// Map creation
        var map = new google.maps.Map(document.getElementById('contentmap_<?php echo $owner; ?>_<?php echo $id; ?>'),
        {
                zoom: <?php echo $this->Params->get("zoom", 0); ?>,
                center: center,
                mapTypeId: google.maps.MapTypeId.<?php echo $this->Params->get("map_type", "ROADMAP"); ?>,
                styles : [
                    {
                     elementType: "geometry",
                     stylers: [
                          { visibility: "on" },
                          { hue: "#ff8800" }
                     ]
                    },{
                     elementType: "labels",
                     stylers: [
                           { hue: "#ffc300" }
                     ]
                    }
                ]
             });

我的理解是你想将这些样式应用到你的地图上?由于您发布的内容实际上只是一个静态对象,因此您可以将其直接插入到地图选项中:

var map = new google.maps.Map(document.getElementById('contentmap_<?php echo $owner; ?>_<?php echo $id; ?>'),
    {
        zoom: <?php echo $this->Params->get("zoom", 0); ?>,
        center: center,
        mapTypeId: google.maps.MapTypeId.<?php echo $this->Params->get("map_type", "ROADMAP"); ?>,
            styles:  [ 
                       { 
                         elementType: "geometry",
                         stylers: [
                           { visibility: "on" },
                           { hue: "#ff8800" }
                         ] 
                       },{ 
                         elementType: "labels",
                         stylers: [
                           { hue: "#ffc300" }
                         ] 
                       } 
                     ]
    });

如果你的意思是使样式动态化,PHP 标签也可以替换styles对象中的值。