当前位置: 首页 > 面试题库 >

将数组编码为不带数组索引的JSON字符串

窦英武
2023-03-14
问题内容

我正在使用以下语法从Javascript向数据库发送JSON字符串:

["Product1","Product2","Product3"]

在我将这些数据简单地放入数据库而不用php对其进行解码之前,它在恢复后再次使用时就没有问题。

但是,现在我需要对字符串中的数据进行一些更改,因此我在PHP中对其进行了解码,这将导致如下所示的数组:

print_r(json_decode($_POST["myjsonstring"]));
//outputs
//Array
//(
//    [0] => Product1
//    [2] => Product2
//    [3] => Product3
//)

我的问题是,当我将此数组编码回JSON时,字符串的格式如下:

{"0":"Product1","2":"Product2","3":"Product3"}

我需要编码的字符串与我的javascript创建的字符串相同,因此没有数组索引。是否有捷径可寻?


问题答案:

您需要PHP的array_values()功能:

$json_out = json_encode(array_values($your_array_here));


 类似资料:
  • 问题内容: 是否可以在Python数组中使用字符串作为索引? 例如: 问题答案: 您想要的称为关联数组。在python中,这些被称为字典。 词典有时在其他语言中被称为“关联记忆”或“关联数组”。与用数字范围索引的序列不同, 字典是用键索引的,键可以是任何不可变的类型 ;字符串和数字始终可以是键。 创建上述字典的另一种方法: 访问值: 获取密钥(在Python v2中): 在Python 3中,您将

  • 问题内容: 假设我有一个一维numpy数组 我想将此编码为2D一热阵列 有快速的方法吗?比循环遍历设置元素更快。 问题答案: 您的数组定义了输出数组中非零元素的列。您还需要定义行,然后使用花式索引:

  • 假设我有一个1d numpy数组 我想将其编码为一个2D one hot数组 有没有快速的方法可以做到这一点?比仅仅在上循环设置的元素更快。

  • 问题内容: 如何将对象的json数组解析为具有这些对象作为字符串的bash数组? 我正在尝试执行以下操作: 但是回声会打印出线条,而不是特定的对象。对象的格式为: 我需要将其传递给api: 问题答案: 问题在于,仍然仅输出文本行; 您不必将每个数组元素都保留为一个单元。 就是说,只要换行符在任何对象中都不是有效字符, 您仍然可以在单独的行中输出每个对象。 当然,在这种假设下,您可以使用4中的命令来

  • 问题内容: 我具有来自Web服务的以下JSON字符串,并且正在尝试将其转换为 我在线上对此进行了验证,这似乎是正确的。现在我在android开发中使用以下代码来利用 这会引发异常和类型不匹配的异常。 问题答案: 在这里,您将获得JSONObject,因此请更改以下行: 具有以下内容: 之后

  • 问题内容: 我正在尝试对从Zend_DB查询返回的数组进行json_encode。 var_dump给出:(手动添加0个成员不会更改图片。) 编码后的字符串如下所示: 我需要的是: php.ini / json_encode文档说的应该是什么样子。 问题答案: 您如何设置初始阵列? 如果您将其设置为: 那么您就没有一个带有数字索引而是一个字符串的数组,并且该数组将转换为JS world中的一个对象