PHP将这个数组转换为整数级数



这是我的数组

的输出

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

但是我希望它看起来像

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

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

$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)

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

$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()

相关内容

  • 没有找到相关文章