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

标签 php arrays json

<分区>

我使用以下语法从 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));

关于php - 将数组编码为不带数组索引的 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27232834/

相关文章:

java - 从带有两个参数的方法创建新数组java

arrays - 在 O(n) 时间内找到数组中的 10 个最大整数

json - 如何将 JSON 转换为 Scala 中的类型

javascript - 合并数组中的重复对象

javascript - 如果在对象中找到值,则返回键

c# - 谁能一眼就告诉我为什么这个 Action 这么慢?

php - 包装 mongoDB 和 mysql

javascript - 将多个变量从 JS 发送到 PHP

PHP - 不是运算符,还有其他别名吗?

php - 如何通过API将新的YouTube channel 添加到YouTube CMS?