【发布时间】:2018-05-16 09:58:38
【问题描述】:
我正在尝试计算多维数组中的数组值以获得以下数组值。
$allMultiGridRes = Array
(
[0] => Array
(
[1] => Array
(
[1] => grid multi col1
[2] => grid multi col2
)
[2] => Array
(
[1] => grid multi col1
)
)
[1] => Array
(
[1] => Array
(
[1] => grid multi col1
[2] => grid multi col2
)
[2] => Array
(
[1] => grid multi col1
[2] => grid multi col2
)
)
[2] => Array
(
[1] => Array
(
[1] => grid multi col1
[2] => grid multi col2
)
[2] => Array
(
[1] => grid multi col1
[2] => grid multi col2
)
)
)
我期待以下输出。
Array
(
[1] => Array
(
[grid multi col1] => 3
[grid multi col2] => 3
)
[2] => Array
(
[grid multi col1] => 3
[grid multi col2] => 2
)
)
我使用for loop 尝试了以下方法,但无法实现上述输出。
$allMultiGridRes =array();
$paramCheck =array();
foreach ($allMultiGridRes as $gMKey => $GMvalue){
if(!empty($GMvalue)){
foreach ($GMvalue as $gMKey2 => $gMValue2){
if(!empty($gMValue2)){
$allGridCount[$gMKey2] = array_count_values($gMValue2);
foreach ($gMValue2 as $gMKey3 => $gMValue3){
$paramCheck = !empty($allGridCount[$gMKey2])?$allGridCount[$gMKey2]:array();
$GMindex1 = $gMValue3;
$allGridCount[$gMKey2][$GMindex1] = array_key_exists($GMindex1,$paramCheck) ? $allGridCount[$gMKey2][$GMindex1]++ : 1;
}
}
}
}
}
}
使用此方法,我得到以下输出,但值未按预期计算。
Array
(
[1] => Array
(
[grid multi col1] => 1
[grid multi col2] => 1
)
[2] => Array
(
[grid multi col1] => 1
[grid multi col2] => 1
)
)
我对建议持开放态度,我也尝试了很多方法,但仍然无法实现。卡在这里很久了
提前致谢。
【问题讨论】:
-
请分享现场演示,或分享php代码中的数据示例
-
不确定您如何计算它们。为什么不应该计算 [0]?在 [1] 中,我数 2 col1 和 2 col1,你说各有 3 个?
-
@C2486 你的意思是 var_export?
-
$allMultiGridRes的php代码,它有助于在我们身边运行 -
@Prashanth:Bhai 我说的是在 php 中形成的这个数组,
Alive to Die在这里给出:eval.in/1004977
标签: php arrays codeigniter for-loop