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

PHP Array to JSON Array using json_encode();

穆子琪
2023-03-14
问题内容

我已经对使用内置json_encode();函数制作的数组进行了编码。我需要像这样的数组数组格式:

[["Afghanistan",32,12],["Albania",32,12]]

但是,它返回为:

["2":["Afghanistan",32,12],"4":["Albania",32,12]]

如何在不使用任何正则表达式欺骗的情况下删除这些行号?


问题答案:

如果您的PHP数组中的数组键不是连续的数字,则json_encode() 必须
使另一个构造成为一个对象,因为JavaScript数组总是连续地进行数字索引。

array_values()在PHP的外部结构上使用,以丢弃原始的数组键,并将其替换为从零开始的连续编号:

例:

// Non-consecutive 3number keys are OK for PHP
// but not for a JavaScript array
$array = array(
  2 => array("Afghanistan", 32, 13),
  4 => array("Albania", 32, 12)
);

// array_values() removes the original keys and replaces
// with plain consecutive numbers
$out = array_values($array);
json_encode($out);
// [["Afghanistan", 32, 13], ["Albania", 32, 12]]


 类似资料:

相关阅读

相关文章

相关问答