Php 对多维数组中的值进行计数,并将结果保存为新数组
这是我的多维影像。数组:Php 对多维数组中的值进行计数,并将结果保存为新数组,php,multidimensional-array,count,Php,Multidimensional Array,Count,这是我的多维影像。数组: Array ( [0] => Array ( [id] => 1 [language] => English ) [1] => Array ( [id] => 1 [language] => English ) [2] => Array
Array
(
[0] => Array
(
[id] => 1
[language] => English
)
[1] => Array
(
[id] => 1
[language] => English
)
[2] => Array
(
[id] => 1
[language] => English
)
[3] => Array
(
[id] => 1
[language] => English
)
[4] => Array
(
[id] => 1
[language] => English
)
[5] => Array
(
[id] => 1
[language] => English
)
[6] => Array
(
[id] => 1
[language] => English
)
[7] => Array
(
[id] => 1
[language] => English
)
[8] => Array
(
[id] => 1
[language] => English
)
[9] => Array
(
[id] => 1
[language] => English
)
[10] => Array
(
[id] => 1
[language] => English
)
[11] => Array
(
[id] => 1
[language] => English
)
[12] => Array
(
[id] => 1
[language] => English
)
[13] => Array
(
[id] => 1
[language] => English
)
[14] => Array
(
[id] => 1
[language] => English
)
[15] => Array
(
[id] => 1
[language] => English
)
[16] => Array
(
[id] => 1
[language] => English
)
[17] => Array
(
[id] => 1
[language] => English
)
[18] => Array
(
[id] => 1
[language] => English
)
[19] => Array
(
[id] => 1
[language] => English
)
[20] => Array
(
[id] => 1
[language] => English
)
[21] => Array
(
[id] => 1
[language] => English
)
[22] => Array
(
[id] => 1
[language] => English
)
[23] => Array
(
[id] => 1
[language] => English
)
[24] => Array
(
[id] => 2
[language] => Italian
)
[25] => Array
(
[id] => 1
[language] => German
)
[26] => Array
(
[id] => 1
[language] => German
)
[27] => Array
(
[id] => 1
[language] => German
)
[28] => Array
(
[id] => 1
[language] => German
)
[29] => Array
(
[id] => 1
[language] => German
)
[30] => Array
(
[id] => 1
[language] => German
)
[31] => Array
(
[id] => 1
[language] => German
)
[32] => Array
(
[id] => 1
[language] => German
)
[33] => Array
(
[id] => 1
[language] => German
)
[34] => Array
(
[id] => 1
[language] => German
)
[35] => Array
(
[id] => 1
[language] => German
)
[36] => Array
(
[id] => 1
[language] => German
)
)
我知道如何循环遍历数组以及如何计算值,但这次我还需要检查[id]是否位于具有多种语言的数组中,并且它必须完全动态地用于不同的查询
新阵列应如下所示:
Array (
[1] => Array(
"English" => 24,
"German" => 12
),
[2] => Array(
"Italian" => 1
)
)
只是为了让你走。。。如果你真的很聪明,你可以使用array\u键自动填充你的排序数组()。。。(谷歌it)那么“是在一个具有多种语言的数组中”你的意思是“是一个长度大于1的数组”?几乎不适合使用pastebin。把回答问题所需的一切都放在你的问题中。你能展示一下你目前是如何计算的吗?
$sorted_array = array("English" => 0, "German" => 0);
foreach($old_array as $a) {
if(isset($a['language']) && strlen($a['language']) >= 1) {
switch($a['language']) {
case 'English' :
$sorted_array['English']++;
break;
case 'German' :
$sorted_array['German']++;
break;
}
}
}