【问题标题】:Insert a converted Php array in a js object在 js 对象中插入转换后的 Php 数组
【发布时间】:2017-12-17 17:12:36
【问题描述】:

我有一个 php 数组,我使用 json_encode 方法在 Js 中转换:

$mesi = ['Nov', 'Dic'];

var js_mesi = '<?php print(json_encode($mesi)); ?>';

这是转换后的数组

["Nov","Dic"]

我现在遇到的问题是将 Js 数组放在这样的 JS 对象中

data: {
    labels: [js_mesi],
}

因为 js_mesi 的值被识别为单个值,而不是两个单独的值。我想要的输出是这样的:

data: {
    labels: ["Nov", "Dic"]
}

我看到了这个

data: {
    labels: ["Nov,Dic"]
}

【问题讨论】:

  • 你说你看到的和你说你在代码中做的不匹配。
  • 为什么这个问题看起来和我半小时前刚刚看到的另一个问题一模一样。
  • 我能理解为什么有人反对这个问题吗?这个问题很清楚也很容易。我认为这个论坛是为了帮助人们而不是随机投下愚蠢的投票。
  • 因为没有人帮助我,所以我以更简单的方式再次写了这个问题。我有一个问题,我想解决它
  • 令人难以置信的是,有多少人在这个论坛上只是为了对问题投反对票而不是提供有用的帮助。

标签: javascript php arrays json object


【解决方案1】:

在 javascript 变量赋值中,您在 PHP 块周围添加了 ' 单引号。

因此它被认为是一个字符串,并且会得到值'["Nov","Dic"]' 而不是一个数组。

更正的代码

<?php
$mesi = array('Nov','Dic');
?>

var js_mesi = <?php print(json_encode($mesi)); ?>;

输出

var js_mesi = ["Nov","Dic"];

参考https://eval.in/920653 的输出

【讨论】:

    猜你喜欢
    • 2021-06-28
    • 2022-01-14
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多