从ajax请求转换php中的数组
我从ajax请求中得到了很多数组,我在php中得到了所有数组。我所做的是将它们组合在一起,得到了上面的结果。我的问题是,我无法单独获得返回的所有值。如何将上面的数组转换为如下所示。因此,我可以使用关键示例获得每个值从ajax请求转换php中的数组,php,arrays,Php,Arrays,我从ajax请求中得到了很多数组,我在php中得到了所有数组。我所做的是将它们组合在一起,得到了上面的结果。我的问题是,我无法单独获得返回的所有值。如何将上面的数组转换为如下所示。因此,我可以使用关键示例获得每个值 Array ( [0] => Array ( [floor 1st Floor] => Reinforced Concrete ) [1] => Array (
Array
(
[0] => Array
(
[floor 1st Floor] => Reinforced Concrete
)
[1] => Array
(
[floor 2nd Floor] => Plain Cement
)
[2] => Array
(
[floor 3rd Floor] => Plain Cement
)
[3] => Array
(
[floor 3rd Floor] => Marble
)
[4] => Array
(
[floor 4th Floor] => Marble
)
[5] => Array
(
[floor 4th Floor] => Wood
)
[6] => Array
(
[floor 3rd Floor] => eqweqw
)
[7] => Array
(
[wall 1st Floor] => Reinforced Concrete
)
[8] => Array
(
[wall 2nd Floor] => Plain Cement
)
[9] => Array
(
[wall 4th Floor] => Plain Cement
)
[10] => Array
(
[wall 3rd Floor] => CHB
)
[11] => Array
(
[wall 3rd Floor] => ewqewqq
)
[12] => Array
(
[roof] => Tiles
)
[13] => Array
(
[roof] => qweqe
)
)
或者,如果可能的话,如何像下面这样从第一个数组中获取所有值echo$value['wall 3rd Floor']代码>
foreach ($material as $value) {
echo $value['wall 3rd Floor'];
}
我尝试了几种类似的方法,但没有得到理想的结果
Array
(
[0] => Array
(
[floor 1st Floor] => Reinforced Concrete
[floor 2nd Floor] => Plain Cement
[floor 3rd Floor] => Plain Cement
[floor 3rd Floor] => Marble
[floor 4th Floor] => Marble
[floor 4th Floor] => Wood
[floor 3rd Floor] => eqweqw
[wall 1st Floor] => Reinforced Concrete
[wall 2nd Floor] => Plain Cement
[wall 4th Floor] => Plain Cement
[wall 3rd Floor] => CHB
[wall 3rd Floor] => ewqewqq
[roof] => Tiles
[roof] => qweqe
)
)
for($i=0;$i”;
}
下一个($数组);
}
您只需将foreach()加倍即可。
它:
for ($i = 0; $i < count($array); $i++) {
$key=key($array);
$val=$array[$key];
if ($val<> ' ') {
echo $key ." = ". $val ." <br> ";
}
next($array);
}
然后,您可以随意访问它:
$new = array();
foreach($data as $item) {
foreach($item as $key => $value) {
$new[$key] = $value;
}
}
或者,如果您想要更短的回路,可以通过利用和: 解释
获取key()
$item
获取current()
$item
”;
}先生,我可以使用数组
$data=[['floor 1st floor'=>'钢筋混凝土'],['floor 2nd floor'=>'素水泥'],['floor 3rd floor'=>'素水泥'],]获取值代码>问题是当数组是第一个数组时示例数组([0]=>数组([floor 1st floor]=>钢筋混凝土)[1]=>数组([floor 2nd floor]=>素水泥))
@Pekka这就是我从中获取的。您提供的第一个数组。你必须按你想要的方式创建一个新数组。让我再试一次,先生,也许我弄错了,$new['wall 3rd Floor']
这将响应值CHB
和ewqewqq
对吗?让我再检查一遍,先生等等,你有相同的钥匙。这将导致一个问题,因为值将被原始数组中最后一个类型的值覆盖。我看到了被覆盖的数据如何避免被覆盖?
echo $new['wall 3rd Floor'];
$new = array();
foreach($data as $item) {
$new[key($item)] = current($item);
}