我在php中编程多年,但我遇到了一个问题,并且不知道它为什么会发生。我想我错过了什么,但我的大脑已停止工作了! 我有个屁股。数组和当我var_dump()它时,它是这样的:
array
0 =>
array
4 => string '12' (length=2)
1 =>
array
2 => string '10' (length=2)
2 =>
array
1 => string '9' (length=1)
我想对这些值做些什么,比如将它们存储在一个数组中,(12,10,9),但我不知道如何检索它!我测试了foreach(),array_value(),但没有结果。无论我做什么,var_dump()结果仍然是一样的! 顺便说一句,我使用codeigniter框架,但逻辑上它应该与框架无关 谢谢你们
答案 0 :(得分:1)
您可以尝试使用array_map
$array = array(
0 => array(4 => '12'),
1 => array(2 => '10'),
2 => array(1 => '9'));
$array = array_map("array_shift", $array);
var_dump($array);
输出
array
0 => string '12' (length=2)
1 => string '10' (length=2)
2 => string '9' (length=1)
答案 1 :(得分:0)
您可以像这样访问它们:
$array[0][4]= '13';
$array[1][2]= '11';
$array[2][1]= '10';
的var_dump($阵列);给出了这个结果:
array(3) {
[0]=> array(1) {
[4]=> string(2) "13" }
[1]=> array(1) {
[2]=> string(2) "11" }
[2]=> array(1) {
[1]=> string(2) "10" }
}
答案 2 :(得分:0)
for ($i = count($array) ; $i >= 0 ; $i--) {
foreach($array[$1] as $k => $v) {
echo $k . "=>".$v;
}
}
答案 3 :(得分:0)
如果您希望它们以数组结尾,请声明一个,然后遍历您的项目。
$arr = new array();
foreach ($arrItem in $yourArray) {
foreach ($innerArrItem in $arrItem) {
array_push($arr, $innerArrItem);
}
}
print_r($arr);
答案 4 :(得分:0)
如果您的深度未知,您可以执行以下操作:
$output = array();
array_walk_recursive($input, function($value, $index, &$output) {
$output[] = $value;
}, $output);