1

我有一个 JSON 字符串,其中包含仅由数字组成的字符串键,如下所示:

{
  "a":"b",
  "1":2,
  "3":"4"
}

当我使用 将其转换为关联数组json_decode时,PHP 将键解释为整数并返回:

array (
  'a' => 'b',
  1 => 2,
  3 => '4'
)

我可以告诉json_encode它把它变成一个对象,这会产生一个带有“字符串”属性名称的对象"1"-"3"但我需要在它上面执行一些数组函数,所以我真的需要它是一个关联数组。

有没有办法实现这一目标?

我发现的唯一“解决方案”是在 JSON 键前面加上不是数字的东西,如下所示:

{
  "a":"b",
  "x1":2,
  "x3":"4"
}

但是如果有一种方法可以告诉 PHP 将键保存为字符串,那就太好了,因为它们实际上在 JSON 中被引用为字符串。

4

0 回答 0