我有一个蜘蛛图,它与静态数据完美配合,当我尝试从PHP导入数据时效果不是很好。
我得到了什么:
var d = [
[
{axis:"red",value:0.5},
{axis:"blue",value:0.56},
{axis:"yellow",value:0.42},
]
有一个类似的问题here,但当我尝试按以下方式导入数据时它不起作用:
var d = [
[
{axis:"red",value:<?php echo json_encode($php_variable1); ?>},
{axis:"blue",value:<?php echo json_encode($php_variable2); ?>},
{axis:"yellow",value:<?php echo json_encode($php_variable); ?>},
]
显然,我不是专业人士。对业余爱好者有什么建议吗?
答案 0 :(得分:0)
echo
变量举个例子,这很简单。
<?php
$php_variable1 = 0.5;
$php_variable2 = 0.56;
$php_variable3 = 0.42;
?>
<script type="text/javascript">
var d = [
[
{ axis: "red", value: <?php echo $php_variable1; ?> },
{ axis: "blue", value: <?php echo $php_variable2; ?> },
{ axis: "yellow", value: <?php echo $php_variable3; ?> }
]
];
</script>
这里发生的是您将值存储在$php_variable1
到$php_variable2
中,然后echo
在JavaScript对象中输出。
json_encode
数组 json_encode
函数会将数组转换为JSON对象。
使用另一个例子来演示。
<?php
$php_variable1 = array("red" => 0.5);
$php_variable2 = array("blue" => 0.56);
$php_variable3 = array("yellow" => 0.42);
?>
<script type="text/javascript">
var d = [
[
<?php echo json_encode($php_variable1); ?>,
<?php echo json_encode($php_variable2); ?>,
<?php echo json_encode($php_variable3); ?>
]
];
</script>
或者,如果您不想继续重新定义变量,可以将上述内容缩短为以下内容。
<?php
$myJSON = array(
array("red" => 0.5),
array("blue" => 0.56),
array("yellow" => 0.42)
);
?>
<script type="text/javascript">
var d = [
[
<?php echo json_encode($myJSON); ?>
]
];
</script>
这会创建一个multidimensional array,这意味着只创建了一个变量,json_encode
遍历它以创建对象。