数组到JavaScript字符串 - javascript

所以我有这个字符串:

[{values: {"US" : "rgba(29, 79, 207, 1)"}},{values: {"NL" : "rgba(29, 79, 207, 1)"}}]
此字符串为jvectormap设置颜色。启用此功能的全部原因,我只会显示访问过的国家。

它来自Javascript,我需要使用相同的格式,但是在PHP中,我认为它与json编码有关,但我无法使其正常工作。所以我想做的是在此字符串中创建一个数组..我该怎么做?

当我用PHP创建数组并将其编码为json时,结果如下:
[["NL","black"],["US","blue"]],这种格式当然行不通。

参考方案

您提供了无效的JSON。需要引用values成为"values",PHP才能对其进行解码。

<?php

$string = <<<JSON
[{"values": {"US" : "rgba(29, 79, 207, 1)"}},{"values": {"NL" : "rgba(29, 79, 207, 1)"}}]
JSON;

echo print_r( json_decode($string, true), true);

https://eval.in/199639

出色的JSON检查器是http://json.parser.online.fr

然后,您将像创建数组一样;

$array = array (
  0 => 
  array (
    'values' => 
    array (
      'US' => 'rgba(29, 79, 207, 1)',
    ),
  ),
  1 => 
  array (
    'values' => 
    array (
      'NL' => 'rgba(29, 79, 207, 1)',
    ),
  ),
);
echo json_encode($array);

https://eval.in/199684

PHP json_encode数组到javascript关联数组 - javascript

我有一些从PHP中读取的mysqli列。它正在完美地获取和回显。$results = mysqli_fetch_assoc(mysqli_query($conn, $querystring)); echo json_encode($results); //$results = {"title":"Sea Shells"…

使用JS和PHP更改弹出窗口背景图像 - javascript

我有一个JS函数:function zoom(now) { document.getElementById("popup").style.display = "block"; document.getElementById("photos").style.backgroundImage = …

PHP-显示特殊字符 - javascript

允许用户输入的代码段//fetch user input and pass it in URL alertify.prompt("Please enter note/remarks for this Form (optional):", function (e,value) { if (e) { alertify.success(…

执行onclick时获得意外令牌 - javascript

我正在使用onclick事件从PHP调用JS函数。这是我的代码:我在一个函数中,因此我需要通过PHP来完成它,因为然后我会返回:$html = '<input type="checkbox" checked value="1" id="setGetSku" name="se…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …