我的网站上有一个表格。当我把它提交给我的PHP脚本我使用var_dump($_POST);
表明已提交的所有表单数据。阵列遵循以下。
我想使用PHP在以下数组上运行 foreach 循环,并按索引对它们进行分组。
预期输出:
1 - 111 - 1
2 - 222 - 2
3 - 333 - 3
因此,每行将基于数组元素中的整数具有相关的名称,源和级别。
有人可以解释如何做到这一点?
array(11) {
["source_name0_id"]=>
string(1) "1"
["source_code0_id"]=>
string(3) "111"
["source_level0_id"]=>
string(1) "1"
["source_name1_id="]=>
string(1) "2"
["source_code1_id="]=>
string(3) "222"
["source_level1_id="]=>
string(1) "2"
["source_name2_id="]=>
string(1) "3"
["source_code2_id="]=>
string(3) "333"
["source_level2_id="]=>
string(1) "3"
["submit"]=>
string(6) "Submit"
}
谢谢!
答案 0 :(得分:0)
$foreach($array /* or in the case $_POST? */ as $key => $value) {
/// loop...
}
或者只是
$foreach($array as $value) {
/// loop...
}
编辑:因此,要获得期望的输出,如果您提前知道最大值,则确实有另一种简便方法:
$for($i = 0; $i<$max /* if you have it */; $i++) {
echo $_POST["source_name" . $i . "_id"] . " - " .
$_POST["source_code" . $i . "_id"] . " - " .
$_POST["source_level" . $i . "_id"] . "<br>\n";
}
答案 1 :(得分:-1)
<?php
$array = [
"source_name0_id"=> "1",
"source_code0_id"=> "111",
"source_level0_id"=> "1",
"source_name1_id="=> "2",
"source_code1_id="=> "222",
"source_level1_id="=> "2",
"source_name2_id="=> "3",
"source_code2_id="=> "333",
"source_level2_id="=> "3",
"submit"=> "Submit"
];
$output = [];
foreach($array as $key=>$val)
{
$output[] = [$val, $key, $val];
}
echo '<pre>';
print_r($output);