我正在尝试遍历php中的数组数组。通常有时候会遇到复杂的数组,但是我需要您的帮助。
var_dump($array)
产生了以下数组:
$arrayVal = array(6) {
["item_id"]=>
array(2) {
[0]=>
string(1) "1"
[1]=>
string(1) "2"
}
["request_explanation"]=>
array(2) {
[0]=>
string(7) "Welcome"
[1]=>
string(11) "Hello World"
}
["quantity"]=>
array(2) {
[0]=>
string(1) "4"
[1]=>
string(1) "4"
}
["unit_cost"]=>
array(2) {
[0]=>
string(1) "4"
[1]=>
string(1) "3"
}
["total_cost"]=>
array(2) {
[0]=>
string(1) "0"
[1]=>
string(1) "0"
}
["supporting_document"]=>
string(0) ""
}
我的数据库表:
我希望能够将该数组中的每个值保存到上表中。感谢您的帮助。
答案 0 :(得分:1)
使用其中一个子数组的索引来访问所有其他子数组:
foreach ($array['item_id'] as $i => $item_id) {
$request_explanation = $array['request_explanation'][$i];
$quantity = $array['quantity'][$i];
// repeat this for all the columns
// Now you can insert all these variables into the database
}
答案 1 :(得分:0)
使用循环来构建2个单独的数组:
foreach($array['ExpensesList'] as $index => $val){
$array1[$index] = $array['ExpensesList'][$index][0];
$array2[$index] = $array['ExpensesList'][$index][1];
}
然后将每个数组分别插入数据库中。
如果任何子数组在2处包含索引,则此方法将不起作用,因此这明确适用于您提供的示例结构。