如何在数组元素之间添加逗号

时间:2018-02-20 12:42:52

标签: php arrays multidimensional-array

大家。

我有一个多维数组的输出(错误):

  

[[23],[145],[16],[2],[2],[3],[],]

我需要这样的输出(好):

  

[[2,3],[1,4,5],[1,6],[2],[2],[3],[],]

此处的数据数组:Array ( [0] => Array ( [0] => 2 [1] => 3 ) [1] => Array ( [0] => 1 [1] => 4 [2] => 5 ) [2] => Array ( [0] => 1 [1] => 6 ) [3] => Array ( [0] => 2 ) [4] => Array ( [0] => 2 ) [5] => Array ( [0] => 3 ) [6] => Array ( ) )

我试图这样做的方式:

print_r($gretimumosarasas);
echo "[ ";
for ($row = 0; $row < count($gretimumosarasas); $row++) {
  echo "[";
  for ($col = 0; $col < count($gretimumosarasas[$row]); $col++) {
    echo $gretimumosarasas[$row][$col];
  }
  echo "], ";
}
echo " ]";

有人可以解释,如何添加逗号,就像我在下面写了一个输出示例一样?

如果只有在第二个for循环中添加昏迷然后搜索最后一个符号索引并将其删除的方法?

谢谢。

2 个答案:

答案 0 :(得分:-1)

您可以使用数字implode将数组转换为字符串。

echo "[ ";
for ($row = 0; $row < count($gretimumosarasas); $row++) {
  echo "[";
    echo implode(',', $gretimumosarasas[$row]);
  echo "], ";
}
echo " ]";

答案 1 :(得分:-1)

虽然我非常担心你似乎从你的代码生成代码(这里是龙!),但这很简单。

function array_formatter($arr)
{
   $temp=array();
   foreach ($arr as $v) {
     $temp[] = is_array($v) ? array_formatter($v) : $v; 
   }
   return '[' . implode(',', $temp) . ']';  
}

BTW PHP数组不是多维的,它们是嵌套的。嵌套数组可以模拟多维数组,但您的示例数据本身并不是多维数据。