这是我的数组的输出
[["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"],["1"]]
但我希望这看起来像
[1,1,1,1,1,1,1]
如何在php中实现这一点,当我不想要它时,似乎我所做的一切都会被放入数组中的对象中。我尝试使用array_values并成功返回值,因为我最初确实有键,但这仍然不是完全理想的结果
答案 0 :(得分: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)
答案 1 :(得分: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()
等值。