0

这是我的数组的输出

[["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"]]

但我希望这个看起来像

[1,1,1,1,1,1,1]

这将如何在 php 中实现,似乎我所做的一切都被放入数组中的一个对象中,当我不想要的时候。我尝试使用 array_values 并且它只成功返回了值,因为我最初确实有键,但这仍然不是完全期望的结果

4

2 回答 2

1
$yourArray = [["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"]];

在中使用以下代码PHP 5.3+

$newArray = array_map(function($v) {
    return (int)$v[0];
}, $yourArray);

或在其他 PHP 版本中使用以下代码

function covertArray($v) {
    return (int)$v[0];
}

$newArray = array_map('covertArray', $yourArray)
于 2013-03-07T16:28:28.673 回答
0

你总是可以做一个简单的循环......

$newArray = array();

// Assuming $myArray contains your multidimensional array
foreach($myArray as $value)
{
   $newArray[] = $value[0];
}

您可以通过以下方式加强它并避免不良索引:

   if( isset($value[0]) ) {
      $newArray[] = $value[0];
   }

或者只是使用许多数组函数之一来获取值,例如array_pop(), array_slice(),end()等。

于 2013-03-07T16:22:57.883 回答